অ্যাপাচি এইচটিটিপি সার্ভার এত জটিল কেন?


14

Apache HTTP সার্ভার একটি মোটামুটি বড় প্রকল্প-অনেক বেশী বলে বড়, lighthttpবা nginxবা অবশ্যই "সরল HTTP- র সার্ভার" আপনি সি / সি প্রায় ফ্লোটিং দেখুন ++, টিউটোরিয়াল।

অতিরিক্ত কোড কী? এটি কি সুরক্ষা / স্থিতিশীলতা যুক্ত করে (এবং যদি তা হয় তবে কীভাবে?) বা এটি কেবল অ্যাপাচি confফাইল / .htaccessটাইপ জিনিস (এবং আমার ধারণা VirtualHostsইত্যাদি) পার্স করার মতো কাজ করার জন্য ?

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


এটি গিয়ারগুলি পরিচালনা করার জন্য যারা প্যাক করে না তাদের সকলের আগাছা থেকে সহায়তা করে।
জোয়েল ইথারটন

6
এটি আসল উত্তর নয় - তবে শুনেছি নামটি আসল এমনটি থেকে আসে যে এটির বিকাশের খুব প্রথমদিকে এর অনেক অবদানকারী ছিল। প্রচুর প্যাচ অবদান রেখেছিল, এটি একটি প্যাচি সার্ভার তৈরি করেছে। সত্য গল্প.
জেরেমি

+1 @ জোয়েল ইথারটন: ভাল গল্প, বিশেষত এটি সত্য। তবে সত্যকে কখনই কোনও ভাল গল্পের পথে আসতে দেবেন না :)
থেরোবিউইন

স্থিতাবস্থা সম্পর্কে প্রশ্ন করার উদাহরণের জন্য @aaharon on তবে "ওয়েবসারভার লিখছেন"? আপাচে যেমন অনেক অফার রয়েছে তখন কি আমরা এখানে চাকাটি পুনরায় উদ্ভাবন করছি না?
থেরোবিউকন

উত্তর:


20

এটি অনেক জটিল কারণ:

  • এটি পুরানো ,
  • এটি বৈশিষ্ট্য-সেট ( বৈশিষ্ট্য সেট তুলনা ) একটি বৃহত্তর পেয়েছে ,
  • এটি মডুলার ,
  • এটি একটি বিস্তৃত প্ল্যাটফর্ম সমর্থন ( ওএস সমর্থন তুলনা ) পেয়েছে ,
  • এটি একাধিক পদ্ধতিতে পরিচালিত হয়েছে (মাল্টি-প্রক্রিয়া, মাল্টি-থ্রেড, ইত্যাদি ...)।

তবে এছাড়াও:

  • এটি আরও সক্রিয়ভাবে বিকশিত হয়েছে ( স্থিতি তুলনা । আজ ২০১১-০৫-২৮ পর্যন্ত, অ্যাপাচি httpd এর সাম্প্রতিক আপডেট রয়েছে, যদিও এর সহজাত প্রকাশের প্রক্রিয়াটি প্রতিযোগীদের বিপরীতে তার বর্ধিত জটিলতায় বাধাগ্রস্ত করা উচিত))

বলা হয়ে থাকে যে, আর। এর উত্তরে এর স্থাপত্য সম্পর্কে বৈধ পয়েন্ট রয়েছে এবং কেন অন্য কিছু ওয়েব-সার্ভারগুলি আপেক্ষিক খ্যাতিরও উপকৃত হয়। এটি নির্ভর করে তুমি কি চাও।

আপনি আরও কিছু সামগ্রীর জন্য /programming/475386/apache-vs-nginx-vs-lighttpd- which-is-simpler- to-configure- এবং- administer এ দেখতে চাইতে পারেন আপনার প্রশ্নের সরাসরি উত্তর না দিলেও পুরো থ্রেডটি অনেক পার্থক্য দেখায়।


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


1
+1: কেবলমাত্র চেঞ্জলগের ইতিহাস পড়ার মাধ্যমে ওয়েব সার্ভার নিজেই কীভাবে বিকশিত হয়েছিল এবং বছরের পর বছর দলটি কী চ্যালেঞ্জগুলি পেরেছে তা শেখার ক্ষেত্রে অবিশ্বাস্যভাবে শিক্ষণীয় হতে পারে।
জোয়েল ইথারটন

1
+1 @ হাইলেম "আপেক্ষিক খ্যাতির কিছু অন্যান্য ওয়েব-সার্ভারের উপকার" - এটি অ্যাপাচি-এর সামঞ্জস্যপূর্ণ যেগুলি ঠিক একই কাজটি করবে তার বিকল্পগুলি সম্পর্কে পড়তে আশ্বাস দেয়।
থেরোবিউকন

3

আমার ব্যক্তিগত মতে এটি সমস্ত বৈশিষ্ট্যগুলির কারণেই। আপনি অ্যাপাচি দিয়ে জিনিসগুলি করতে পারেন যা আপনি এখনই এনজিনেক্স বা লাইটথপিডি না করেই করতে পারেন নি। অ্যাপাচি আসলে এমন একটি প্ল্যাটফর্ম যা এইচটিটিপি সমর্থন সহ শিপিংয়ে ঘটে। আপনার কাছে এফটিপি বা এসএমটিপির মতো বাস্তবায়িত প্রায় কোনও প্রোটোকল থাকতে পারে (উদাহরণস্বরূপ Mod_echo দেখুন)। এটি ফিল্টারগুলির জন্য সমর্থন করে যা আপনাকে উদাহরণস্বরূপ অনুমতি দেয়: ফাইলগুলির পরিবর্তে পিএইচপি কোডটি পরিবেশন করুন (যেহেতু মোড_এফপি একটি ফিল্টার মডিউল এবং সামগ্রী নির্মাতারা নয়)। এটি খুব ব্যবহারিক ধারণা না বলে মনে হতে পারে তবে সাধারণভাবে আপনি মূল সামগ্রী নির্মাতাকে টুইঙ্ক করার প্রয়োজন ছাড়াই যে কোনও বিষয়বস্তু ভিতরে বা বাইরে চলে যাওয়া পরিবর্তন করতে ফিল্টার ব্যবহার করতে পারেন। এটিতে এইচটিটিপি ক্লায়েন্টদের জন্য টুইট রয়েছে যা এখন আর নেই, তবে তারপরে, সামঞ্জস্যপূর্ণ এবং বাগ ফ্রি উপায়ে তাদের পরিবেশন করার একমাত্র উপায় ছিল অ্যাপাচি। এর বেশিরভাগটি আজকাল ব্যবহৃত হয় না।

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


3

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

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

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

নিখুঁত বৈশিষ্ট্য, নমনীয়তা, প্রশাসন, প্ল্যাটফর্ম সমর্থন, স্কেলাবিলিটি, ডকুমেন্টেশন এবং পরিপক্কতার দৃষ্টিকোণ থেকে অ্যাপাচি একটি দুর্দান্ত ওয়েব সার্ভার।


-2

এটি ওভার-ডিজাইন / ওভার ইঞ্জিনিয়ারড। সর্বোপরি, এটি এপিআর (অ্যাপাচি পোর্টেবল রানটাইম) ব্যবহার করে, এটি একটি ফোলা স্তর যা ফাংশন কল এবং গতিশীল মেমরির বরাদ্দের অনেক স্তরের ব্যয় করে এবং একক printfকলের সমতুল্যতা অর্জনের জন্য মুক্ত করে । এগুলি তার সত্তা বাড়ে:

  • খুব ধীর
  • খুব সংস্থান-ক্ষুধার্ত
  • সুরক্ষার জন্য নিরীক্ষণ করা অসম্ভব
  • বুঝতে এবং সংশোধন করা কঠিন

5
আপনি বেশিরভাগই এর জটিলতার সমস্যাগুলি চিহ্নিত করে এবং (তর্কযোগ্য, কোন অংশগুলির উপর নির্ভর করে) খারাপ নকশা; তবে এই বিবৃতিগুলি বৈধ হতে পারে, তারা এর জটিলতার কারণ নয় ।
হাইলেম

1
এপিআর ফোলা জন্য -1। আমি এপিআর এর সাথে প্রারম্ভিক 1.0 যুগের সাথে কাজ করছিলাম এবং এরপরে এটি ইতিমধ্যে 1.3 কোডবেজে থাকা থেকে আর কোনও প্রস্ফুটিতকরণের পরিচয় দিচ্ছিল না। এপিআর-তে গতিশীল মেমরির বরাদ্দও কমবেশি 1.3 মেমরি কোডের একটি অনুলিপি। এমনকি আপনি যদি ঠিকই থাকেন ... তবে কোনও ধরণের ব্লাট কীভাবে কিছু কিছু অডিট করা অসম্ভব করে তোলে?
জ্যাসেক প্রুশিয়া

@ হাইলেম (+1) এবং এর সাথেও সম্মত হন: @ আর এর এই চারটি পয়েন্টের উত্তর: আপনি কীভাবে জানেন? আপনি কি তুলনা করছেন। আপনি ঠিক থাকতে পারেন তবে আপনার পয়েন্টগুলি আপেক্ষিক হতে চলেছে, অর্থাত্ "খুব ধীর" - তবে কিসের তুলনায়? এখানে উল্লিখিতদের মতো আরেকটি সার্ভার? যদি তাই হয় দয়া করে তাদের উদ্ধৃত করুন।
থেরোবাইওয়াক

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

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