আমার নিজের ওএসএম ডেটা সার্ভার সহ ওপেনলায়ার্স


9

পোস্টজিআইএস সেটআপ করে প্ল্যানেট.সোম ডেটা স্ন্যাপশট আমদানি করে (কয়েক দিন সময় নিয়েছে) এবং ম্যাপনিক / ক্যাসাডেনিক ইত্যাদি সেটআপ করে আমি নিজেই নিজের ওএসএম ডাটাবেস / টাইল সার্ভার স্থাপনের প্রক্রিয়াটি পেরিয়েছি man আমি নিজে নিজেই রেন্ডার করতে পারি নমুনা টাইলস সহ generate_image.pyএবং আমি নিজেই এর সাথে টাইলসেট উত্পাদন করতে পারি generate_tiles.py। আমি ক্যাসাডেনিক ব্যবহার করে নিজস্ব কাস্টম স্টাইলের টেমপ্লেট তৈরি করতে এবং এর থেকে টাইলস তৈরি করেছি, যা আমি বেশ খুশি I've

আমার নতুন সমস্যাটি একই সার্ভারে চলার জন্য ওপেনলায়ার্সের সাথে একটি নমুনা স্লিপ মানচিত্র সেট করছে ...

আমি এটি কিছুটা কনফিগার এবং কাজ পেয়েছি; অ্যাপাচি, মোডপ্যাথন, টাইলক্যাচ ইত্যাদি সেটআপ করুন এটি পিচ্ছিল মানচিত্রে টাইলস রেন্ডার করে তবে আমার মনে হয় আমি ওপেনলায়ার্সগুলিতে সমস্ত প্যারামিটার পেয়েছি। আমি বর্তমানে যা পেয়েছি তা এখানে (যা সমস্ত জুম স্তরে খালি সমুদ্রের মতো দেখাচ্ছে re

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <script src="http://openlayers.org/api/OpenLayers.js"></script> 
    <script type="text/javascript">
        var map;

        function init() {
                map = new OpenLayers.Map ("map", {
                        maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
                        maxResolution: 156543.0399,
                        numZoomLevels: 19,
                        units: 'm',
                        projection: new OpenLayers.Projection("EPSG:900913"),
                        displayProjection: new OpenLayers.Projection("EPSG:4326")
                } );

                layer = new OpenLayers.Layer.TMS( "OSM", "/tilecache/tilecache.py/", {layername: 'osm', type: 'png'} );
                map.addLayer(layer);
                map.addControl(new OpenLayers.Control.PanZoomBar());
                map.setCenter(new OpenLayers.LonLat(-82.686195, 27.84788), 12)
        }
        </script> 
  </head>
<body onload="init()">
    <div id="map"></div>
</body>
</html>

আমি মনে করি লেয়ার অপশন প্যারামিটারগুলির সাথে কিছু ভুল হয়েছে তবে আমি ম্যাপনিকের রেন্ডার করা সাধারণ ওএসএম টাইলগুলি প্রদর্শনের জন্য ব্যবহৃত মানক পরামিতিগুলি বর্ণনা করার জন্য ভাল ডকুমেন্টেশন পাই না ...

এখানে কি স্পষ্ট কিছু আছে যে আমি মিস করছি যা এই সমস্যার কারণ হতে পারে?

আমার কাছে টাইলস্যাচ সিএফজি-তেও রয়েছে:

[cache]
type=Disk
base=/tmp/tilecache
[osm]
type=Mapnik
spherical_mercator=true
mapfile=/home/user/mapfile.xml

উত্তর:


8

একটি নোট: আমি মোড_প্যাথনের চেয়ে মোড_উজি প্রস্তাব করছি। আর এটি হয় Mod_python এর সাথে অ্যাপাচি প্রেফর্ক বা (আদর্শভাবে) mod_wsgi থ্রেড = 1 এবং প্রসেস = N সহ (যেখানে এন লজিক্যাল প্রসেসরের সংখ্যার সাথে সর্বোত্তমভাবে মিলিত হয়) ব্যবহার করা গুরুত্বপূর্ণ। ডিমন মোডে মোড_উইগি অ্যাপাচি প্রেফার্ক বা কর্মী উভয়ের সাথেই ব্যবহার করা যেতে পারে। এর কারণ হ'ল টাইলিচ্যাচ মানচিত্রকে ম্যাপ করে। ম্যাপ অবজেক্ট এবং তাই এটি থ্রেডে ভাগ করা উচিত নয়। ম্যাপনিক কোর পুরোপুরি থ্রেডসেফ, তবে মাল্টিথ্রেডেড সার্ভার অ্যাপ্লিকেশনগুলিতে ম্যাপনিক-ম্যাপ অবজেক্টের প্রতিটি থ্রেড তৈরি করা দরকার। মোড_টাইল এবং প্যালিওসোভার এমন একটি অ্যাপ্লিকেশনগুলির উদাহরণ যা এইভাবে মাল্টিথ্রেডেড রেন্ডারিংকে সমর্থন করে, তবে টাইলচে এটি সমর্থন করে না। তবে, টাইলক্যাচ + ম্যাপনিক + মোড_উজি ডেমন মোড থ্রেড = 1 দিয়ে চালানো একটি সূক্ষ্ম রুট,

আপনার স্তর কনফিগারেশন হিসাবে "সার্ভিস সংস্করণ" যুক্ত করার চেষ্টা করুন:

var টিএমএস = নতুন ওপেনলায়ারস.লায়ার.টিএমএস ("টাইলকিচ ম্যাপনিক স্তর", ইউআরএল, {সার্ভিস সংস্করণ: "1.0.0", স্তরনাম: "ওএসএম", টাইপ: "পিএনজি"});


ধন্যবাদ! এটি সমস্যার সমাধান করেছে, তবে এখন সেট সেন্টার কাজ করছে না - আমি মনে করি এটি সঠিক জুম স্তরে চলেছে, তবে এটি এলএল = (0, 0) (আফ্রিকার বাইরে) কেন্দ্রিক ... সম্ভবত মিটার বনাম ডিসেম্বরের সমস্যা । ডিগ্রী? এছাড়াও, পরামর্শের জন্য পুনরায় ধন্যবাদ: মোড_উসগি। আমি সেভাবে সেট আপ করব এবং আরও ভাল পারফরম্যান্স পেতে পারি কিনা তা দেখুন। আমি c টি কোর এবং ১২ জিবি র‌্যাম সহ একটি ভিএম-তে চালাচ্ছি, সুতরাং এটির দ্রুত রেন্ডারিং / ক্যাচিংয়ের জন্য এটি প্রচুর পরিমাণে হওয়া উচিত।
colemanm

2
ওএসএম স্থানাঙ্কগুলি মিটারে রয়েছে, সুতরাং আপনাকে কেন্দ্রটি অনুমান করা মিটারে স্থাপন করতে হবে। ডকস.ওপেন্লেয়ার্স.আর.আলিবেরি / দেখুন ।
ক্রিস্টোফার শ্মিড্ট

ধন্যবাদ, দেখে মনে হচ্ছে এটি আমার সমস্যা ছিল - মিটারে কর্ড সহ সেটসেন্টার ব্যবহার করার সময় এটি কাজ করে।
colemanm
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.