سؤال

أنا حاليًا أقوم بتطوير واجهة برمجة تطبيقات ، وشيء واحد قررت أن يكون لديك بوابة واحدة. ضروري.

على سبيل المثال Gateway.cfm؟ component = getBooks & SIG = 232345343 سوف يتصل بمكون getBooks وإرجاع JSON.

تجاهل أي الأمان المشكلات ، هل تعاني واجهة برمجة التطبيقات هذه والأداء لأن جميع الطلبات ستذهب إلى صفحة واحدة؟ أو هل هذا لا يهم خادم الويب سواء انتقلت جميع الطلبات إلى نفس الصفحة أم لا.

كما سيتم تأمين هذا بواسطة SSL أيضًا.

هل كانت مفيدة؟

المحلول

لا يهم الخادم إذا انتقلت جميع الطلبات إلى صفحة واحدة أو إلى صفحات مختلفة. على الأقل ، ليس لخادمات الويب المشتركة (على سبيل المثال Apache/IIS).

يحتوي خادم الويب على ThreadPool ، ويحصل كل طلب على مؤشر ترابط ، ويقوم كل مؤشر ترابط بعمله ويشتهي. ومع ذلك ، هناك تفاصيل واحدة. على المستوى الأدنى ، فإن مؤشرات الترابط التي تعالج الطلب تقرأ جميعها نفس النص/النص (لا أعرف ما إذا تم تجميع CFM/تفسيره) ، لذا لفترة قصيرة جدًا من الوقت ، من المحتمل أن يكون الملف مغلقًا للقراءة. قد يقدم ذلك عقوبة إذا كان عدد الطلبات هائلاً. يمكنك فقط معرفة ما إذا كان هذا حقًا عنق الزجاجة من خلال القياس والاختبار.

لكنني أعتقد أن القيام بمصافحة SSL سيقتل الأداء في وقت أقرب بكثير من قفل القراءة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top