জিএমএল, কেএমএল, জিওজেসন - গতি রেন্ডারিং 3109 বহুভুজ?


12

আমি জিওসিভারের সাথে কাজ করছি, ওপেনলেয়ারগুলিতে ইউএস লোয়ার 48 টি কাউন্টি পরিবেশন করছি (3109 বহুভুজ - আরও অনেকগুলি শীর্ষে)। কাউন্টিগুলি একটি পোস্টগ্রিজ ডাটাবেসে লোড করা হয়। ক্লায়েন্টের কাছে এই পরিমাণটি শীর্ষে আনার চেষ্টা করার সময় আমি বিকাশকারীদের অভিজ্ঞতা সম্পর্কে আগ্রহী।

কোন ডাব্লুএফএস ফর্ম্যাটটি দিয়ে আপনি সেরা ফলাফল অর্জন করেছেন? জিওসরবারে অতিরিক্ত টিউনিং ব্যবহার করা হয়েছে?

আমি বুঝতে পেরেছি যে টাইল্ড ডাব্লুএমএস দ্রুততর হবে তবে আমি ওপেনলায়ারস, অর্থাত্ কোরোপিলথ মানচিত্রে গতিশীল পরিবর্তনের অনুমতি দিতে চাই। ব্যবহারকারী একটি ফর্ম জমা দেয়, একটি পাইথন স্ক্রিপ্ট বলা হয় এবং ওপ্লেলেয়ারদের মানচিত্র ডিভিড লোড করার জন্য নতুন ডেটা বিন ফিরিয়ে দেওয়া হয়। ওপেনলেয়ারগুলিতে বহুভুজ জটিলতা হ্রাস করার আগে আমি পূর্ণ রেজোলিউশন আকারে এটি চেষ্টা করতে চাই।

উত্তর:


4

হতে পারে এটি কিছু নতুন ধারণাকে ট্রিগার করে: আমার কাছে এমন একটি অ্যাপ্লিকেশন চালু রয়েছে যেখানে ব্যবহারকারীরা অনেকগুলি উপাদান সহ একটি মানচিত্র সম্পাদনা করতে পারবেন।

ডাব্লুএফএস হিসাবে সমস্ত ডেটা প্রেরণের পরিবর্তে, আমি ডাব্লুএমএস মানচিত্র ব্যবহার করি এবং ব্যবহারকারী যখন ক্লিক করে, বা কোনও চিত্র আঁকেন, আমি নির্বাচিত আইটেমগুলিকে ডাব্লুএফএস হিসাবে আনে

সার্ভারে একটি আপডেট পাঠানোর পরে, আমি ডাব্লুএমএস স্তরটি রিফ্রেশ করি।

কিছু ওপেনলায়ার উদাহরণ রয়েছে যা দেখায় যে আপনি কীভাবে এটি করতে পারেন। আপনাকে সম্ভবত এটি কিছুটা টুইট করতে হবে, তবে ওপেনলায়ার্স + জিও সার্ভার আপনার জন্য কঠিন অংশটি কার্যকর করবে। ডেটা গিজিপ প্রেরণ করা হয়, তাই মূল ফর্ম্যাটটি এত গুরুত্বপূর্ণও নয়; এটা কোন বাধা নয়। ওপেনলায়ার্স এবং জিও সার্ভারকে তথ্যের আদান-প্রদানের জন্য তারা কী ফর্ম্যাট ব্যবহার করে তা নির্ধারণ করুন।

এই পদ্ধতির বেশ ভাল স্কেল। এমনকি ধীর সংযোগ এবং ধীর কম্পিউটারের লোকেরা মানচিত্র সম্পাদনা করতে এটি ব্যবহার করতে পারেন। শত শত উপাদান আনয়ন খুব দ্রুত এবং সম্ভবত সম্পাদনা করার জন্য আপনার সম্ভবত এটির চেয়ে বেশি প্রয়োজন হবে না।

অবশেষে .. অফ-টপিক, তবে যেমন আপনি মানচিত্রের ডেটা সহ ক্লায়েন্ট-সাইড স্টাফগুলি করার পরিকল্পনা করছেন: মনে রাখবেন যে আপনি ওপেনলায়ারগুলির সাথে বহুভুজ আঁকতে চাইলে আই 7 এবং নিম্নতর সমস্যাযুক্ত হতে চলেছে। ওপেনলায়ার্স ক্লায়েন্ট-সাইড অঙ্কনের জন্য এসভিজি ব্যবহার করে, এবং আই 7 এবং নিম্নতরগুলির মধ্যে অন্তর্নির্মিত সমর্থন নেই Those এই ব্যবহারকারীদের একটি ক্রেপি পুরানো প্লাগইন ডাউনলোড করতে হবে। অন্য সমস্ত ব্রাউজার ভাল আছে।


আইই 8 প্রায় খারাপ হবে। ওপেনলায়ার্সের বেশ কয়েকটি রেন্ডার রয়েছে এবং ব্রাউজারগুলির জন্য যা ক্যানভাস বা এসভিজি সমর্থন করে না এটি ভিএমএল অবলম্বন করবে, যা আই 7 সমর্থন করে। বিভিন্ন রেন্ডারাররা বিভিন্ন জায়গায় আরও ভাল এবং খারাপ পারফরম্যান্স দেয়, যেমন রেন্ডারিং বনাম মাউস-ওভার এবং ক্লিক সনাক্তকরণ
টমফম্ব

3

জিওজসন আমার মতে, সেরা ফর্ম্যাট, এটি পড়া সহজ, জাভাস্ক্রিপ্টে সহজেই ব্যবহারযোগ্য এবং সাধারণত জিএমএল / কেএমএল আকারে ছোট smaller এটি এমনকি শৈলী সম্পর্কে তথ্য থাকতে পারে, এখানে দেখুন

এটি কোনও অফিশিয়াল স্ট্যান্ডার্ড নয়, তবে এটি লিফলেট এবং ওপেনলেয়ার উভয় এবং কিউগিসের মতো অনেক গিস-ডেস্কটপ অ্যাপ্লিকেশনগুলিতে সমর্থিত।


2

জিওজেএসএন ব্যবহার করা আপনার সিস্টেমে গতি বাড়ানোর জন্য একটি ভাল শুরু তবে এটি পর্যাপ্ত নাও হতে পারে। জুম লেয়ারের জন্য একটি করে আপনার ডেটা স্তরের বেশ কয়েকটি সংস্করণ তৈরি করার কথা বিবেচনা করা উচিত এবং প্রতিটি সংস্করণে সাধারণীকরণ / সরলকরণ পদ্ধতি প্রয়োগ করা উচিত । ক্লায়েন্টের নির্বাচিত জুম স্তরের উপর নির্ভর করে প্রাসঙ্গিক স্তরটির অনুরোধ করা উচিত। এটি সার্ভার এবং ক্লায়েন্টের মধ্যে বিনিময় হওয়া ডেটাগুলির বিশদের স্তরটি উপযুক্ত কিনা তা নিশ্চিত করবে এবং এটি নেটওয়ার্ক ট্রান্সফার এবং রেন্ডারিং উভয়ই আরও তাত্পর্যপূর্ণভাবে বাড়িয়ে তুলবে। আরও যেতে, আপনি এই ডকুমেন্টটিতে বর্ণিত হিসাবে ভেক্টর টাইলিং এবং স্থানিক সূচকগুলি সহ আপনার সিস্টেমটি প্রসারিত করতে পারেন , তবে আমি নিশ্চিত নই যে ওপেনলেয়ার এবং জিওসার্ভার এটি পরিচালনা করতে পারে ... তবুও!

নিশ্চিতরূপে: জিএমএল ভুলে যান।


সম্পূর্ণ রেজোলিউশন ডাব্লুএফএস খুব ধীর হয়ে গেলে এটি আমার ফ্যালব্যাক পদ্ধতি। আমি এই আকারের সমস্যাগুলিতে আগ্রহী এবং সম্পূর্ণ রেজোলিউশন গতি এবং, প্রয়োজনে, হ্রাস রেজোলিউশন গতি উভয়কেই জানাতে সক্ষম হতে চাই।
জে লৌরা

2

একটি নতুন এসএলডি ফাইল তৈরি করতে আপনার পাইথন স্ক্রিপ্টটি কেন ব্যবহার করবেন না এবং আপনার অনুরোধের সাথে ডাব্লুএমএস সার্ভারে প্রেরণ করুন।

এখানে একটি উদাহরণ আছে


আমি এটি বিবেচনা করেছি এবং সম্ভবত গতির জন্য এই বিকল্পটি পরীক্ষা করব। এটি উন্নয়নের জন্য নয়, গবেষণার জন্য, তাই আমি ডাব্লুএফএসকে একবার চেষ্টা করে দেখতে চাই।
জে লৌরা

1

আমি ইতিমধ্যে দু'বার অনুরূপ রাস্তায় নেমে এসেছি এবং অল্প সংখ্যক পয়েন্ট বা সত্যিকারের সরল বহুভুজের চেয়ে বেশি কিছু পাওয়ার জন্য ক্লায়েন্ট-সাইড রেন্ডারিং করা ভাল ধারণা নয়। একবার আপনি নিজেকে সেই আর্কিটেকচারের সাথে বেঁধে ফেলে ব্যয় করা ব্যয়বহুল এবং কোনও প্রকল্পে আপনি প্রয়োজন অনুসারে পরিবর্তন বা ডেটা ভলিউম বৃদ্ধি পেতে দেখবেন যেহেতু বিভিন্ন স্টেকহোল্ডার / তত্ত্বাবধায়করা আপনার সিস্টেমে কী সক্ষম তা দেখতে শুরু করে। ব্রাউজার-ভিত্তিক ক্লায়েন্ট-সাইড রেন্ডারিং পদ্ধতির স্কেল হয় না।

আপনি যদি গতিশীল রেন্ডারিং করতে চান তবে আমি দ্বিতীয় দ্বীনের পদ্ধতির কাছে যেতে চাই। আমি আগে এখানে আলাদা তবে সম্পর্কিত সমস্যার জন্য বেশ কয়েকটি বিকল্পের বর্ণনা দিয়েছি । আমি ক্লায়েন্ট-সাইড রেন্ডারিংয়ে সহায়তা করার জন্য বহুভুজ জেনারালাইজেশন ব্যবহার করেছি এবং যদিও এটি অবশ্যই সহায়তা করে, এটি আরও জটিল সমস্যা তৈরি করে, যেমন আপনি যদি ব্যবহারকারীকে আরও জুম করে নন-জেনারালাইজড বহুভুজকে টানতে চান তবে।

এমনকি যদি আপনি একটি পরিচিত প্ল্যাটফর্মের সাথে কাজ করছেন - যেমন আপনি হার্ডওয়্যার, ব্রাউজার সংস্করণ এবং সমস্ত ক্লায়েন্টের প্লাগইনগুলি জানেন - যা সম্ভাবনা নেই, এই ক্লায়েন্টগুলি কী ধরণের লোডের অধীনে রয়েছে সে সম্পর্কে আপনার কোনও ধারণা নেই। এই ধরণের পদ্ধতির প্রয়োজন যে ব্যবহারকারীর অভিজ্ঞতা তরল রাখার জন্য ব্রাউজারটি প্রচুর সিপিইউ সময় পেতে পারে এবং অন্য যে কোনও কিছু আপনার ব্যবহারকারীদের বিরক্ত করতে চলেছে।

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