Thursday 1 March 2018

خدمة ويب استراتيجية الإصدار


خدمة ويب إستراتيجية الإصدار
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
ويب أبي سيرفيسز أبي.
أقدم أبي خدمات الويب الصغيرة لعملائي التي كنت تخطط للتطور مع مرور الوقت. لذلك أنا بحاجة إلى نوع من الإصدار، ولكن لا أستطيع أن أجد أي معلومات حول كيفية القيام بشيء من هذا القبيل.
هل هناك أفضل الممارسات؟
كيف يمكنني الاستمرار في إضافة وظائف جديدة دون كسر التوافق مع خدمات الويب المستهلكين؟
الإصدار هو موضوع معقد، لذلك أولا، تحتاج إلى تحديد أهدافك بطريقة أكثر وصفي. سيكون من الرائع أن أقول أن لديك واجهة يضمن أنك لن كسر التوافق، ولكن اعتمادا على ما هي وظيفة جديدة، قد لا يكون ذلك ممكنا. لذلك هناك حالات مختلفة ومختلف المفاضلات.
إذا كان هدفك هو توفير وظائف جديدة فقط للمستهلكين الجدد، وجميع المستهلكين هم المستهلكين مباشرة (لا وسطاء، أطر، وما إلى ذلك)، ثم نهج نقطة النهاية منفصلة هو الخيار الافضل. في كل مرة تقوم فيها بإضافة ميزة التي تنطوي على كسر، وخلق نقطة نهاية جديدة، وإعطائها رقم الإصدار الجديد ومن ثم السماح للمستهلكين يعرفون للتحقق من صحة ذلك والتبديل تكوينات بهم. هذه الاستراتيجية هي محاولة جميلة وحقيقية، ولكن لديها عيوب وضع العبء على المستهلكين للحفاظ على ما يصل إلى التاريخ. أيضا، إذا كان هناك تبعيات بين الخدمات يمكن أن تصبح واجبا لتتبع. يكون الاتجاه الصعودي إذا كسر الكود انها ليست (مباشرة) خطأ الخاص بك.
الاستراتيجية الرئيسية الأخرى هي واجهة قابلة للتوسيع. هناك ثلاثة أنواع مختلفة هنا أنا على بينة من. أولا، هو نوع الواجهة التي تحاول أن تصف بشكل جيد نطاق الخدمة الذي يمكن أن تضيفه كل ميزة ممكنة إلى حد ما نظرا للواجهة القائمة. إذا كان هذا يبدو من الصعب، هو عليه. يمكنك استدعاء هذا واجهة مثالية. يتم وصف كل شيء تماما، ولكن المجال بأكمله هو أيضا وصفها تماما. و "الكمال" هو حقا فقط على الورق على الرغم من.
الصنف الثاني هو النوع الذي يبدو وكأنه واجهة عادية ولكن إضافة نقاط الإرشاد العامة. في وسدل هذا يعني شس: أي، أزواج قيمة الاسم أو شيء مماثل. يمكنك استدعاء هذه الواجهة الأساسية القابلة للتوسيع. ليس من الصعب جدا القيام به، ولكن ليس من دون انها المضاعفات. قد تجعل نقاط التمديد الواجهة أكثر صعوبة في العمل مع بعض الأدوات (شس: أني)، أو تفقد بشكل واضح بعض قدرتك على التحقق من المدخلات والمخرجات (أزواج القيمة الاسمية). كما أنه من السهل جدا لإساءة استخدام تلك النقاط التمديد بطريقة تجعل من الإصدار 3 أو 4 من الصعب جدا للاستخدام.
الصنف الثالث هو النوع الذي يحول الواجهة إلى بايت-ستريم. يمكنك استدعاء هذه الواجهات الله. إنهم لا يخلوون من مبرراتهم، ولكن إذا كنت تستخدم واحدا، فقد تحتاج إلى السؤال عن سبب استخدامك لخدمات الويب على الإطلاق. ربما يجب أن تفكر في تكب / إب الخام، أو هتب الأساسي جيت / بوست. ولكن ربما كنت سئمت مع تعقيد وسدلز و شسدز وأنت تريد فقط أن تبدأ من الصفر ولكن كنت مرتبطة خدمات الويب لبعض أسباب البنية التحتية. ندرك أنه بمجرد أن تبدأ هذا المسار، سوف تحتاج إلى طريقة جديدة كاملة لوصف للمستهلكين الخاص بك كيفية / عدم استخدام الخدمة الخاصة بك، وإذا كنت تستخدم شسد لذلك .. حسنا كنت أساسا إلى حيث انت بدأت.
أفضل رهان هو معرفة كل هذه الخيارات ونهج تصميم الخدمة الخاصة بك عن طريق محاولة لأول مرة ل "واجهة مثالية"، ثم التخلي وإضافة نقاط التمدد العامة. في محاولة لتصميم واجهة مثالية سوف يجبرك على تعلم الأشياء التي من شأنها أن تجعل خدمتك أفضل، وليس فقط واجهة الخاص بك، ولكن الامر سيستغرق بعض الوقت، وإذا كنت لا تحد من ذلك الوقت بطريقة أو بأخرى، وسوف يستغرق إلى الأبد.
قليلا قصيرة من واجهة الله الحقيقية، وهناك واجهة المجمع. إذا كان النظام يحتوي على طبقات، فأنت تريد أن تكون الواجهة في طبقات أيضا. عند تغيير الطبقة B، تريد فقط تغيير الطبقة B، وليس كل المثيلات في الطبقة C.
الاستراتيجية الأكثر شيوعا التي رأيتها هي إصدار وسدل بإضافة تعريف الإصدار (عادة يي / مم [/ د]) إلى مساحة اسم الكائنات في ودل، بمعنى:
ويمكن القيام بذلك إما على مستوى نوع (أنواع / مخطط) أو على مستوى وسدل بأكمله - & لوت؛ ديفينيتيونس & غ؛ في 1.1 أو & لوت؛ دسكريبتيون & غ؛ في 2.0.
مؤرخة إلى حد ما، ولكن هذا الرابط من عب ديفيلوبر وركس يوفر الأساس المنطقي لهذا النهج، وتحديدا عندما تحتاج الإصدارات إلى زيادة:
النسخة السابقة التوافق / التغييرات غير كسر:
إزالة أو إعادة تسمية العمليات تغيير المعلمات إلى أسلوب تغيير نوع معقد.
وأضيف عموما سلسلة الإصدار إلى عنوان ورل لخدمة الويب، مما يتيح لي "نقاط النهاية التي تم إصدارها". يمكن أن تكون التعليمات البرمجية التي تنفذ تلك النقاط النهائية مشتركة، إذا كانت الاختلافات تافهة ويمكن التعامل معها من قبل نفس التعليمات البرمجية، أو يمكن استنساخ التعليمات البرمجية، أو في مكان ما بين.
يمكن أن تستخدم نقاط النهاية المختلفة التي تم إصدارها أيضا مخططات شمل المصورة، إذا كان هذا هو ما تحتاج إليه.
واحدة من الاحتمالات هي تصميم جميع عمليات خدمة ويب أن يكون لديك معلمة واحدة فقط من النوع الذي يرث من بعض نوع مجردة الذي يحمل رقم الإصدار. يتم تنفيذ هذا النهج من قبل موقع ئي باي منصة خدمات الويب. شيء مثل ما يلي:
بالإضافة إلى ذلك إذا كنت تعمل عبر هتب قد تحتاج إلى إضافة إصدار كمعلمة هتب جيت إلى عنوان ورل نقطة النهاية خدمة ويب، لذلك عليك أن تكون قادرا على الكشف عن الإصدار المطلوب بسهولة الخادم / الخدمة؟ الإصدار = 1.
أضف "رقم إصدار واجهة برمجة التطبيقات" كمعلمة في كل نمط إستراتيجية واجهة برمجة التطبيقات (أبي) ثم تطبيقه في شفرة خدمة الويب التي يحدد فيها رقم الإصدار الإستراتيجية التي سيتم استخدامها.

خدمة ويب إستراتيجية الإصدار
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
استراتيجيات لتحديث أو إصدار خدمات الويب؟
أنا مهتم بسماع أفضل الممارسات حول كيفية التعامل مع إصدارات مختلفة من خدمات الويب.
لتوضيح، إذا كنت قد حصلت على بعض أساليب الويب يتعرض كخدمة ويب، ثم كنت ترغب في إضافة ميزة / وظيفة وبالتالي تغيير توقيع تلك الطريقة يدعو، كيف يمكنك التعامل مع ذلك بطريقة لا كسر كل شيء من العملاء الذين يتصلون حاليا بالخدمة؟
هل تنشر الخدمة على عنوان ورل مختلف؟
هل وضع نسخة في اسم الأسلوب نفسه (ميميثود، MyMethodv2 الخ - أوغ ..)
هل تمر في نسخة كجزء من استدعاء الأسلوب جنبا إلى جنب مع قائمة المعلمة؟
هل يعرف أحد كيف يتعامل غوغل أو أمازون مع هذا السيناريو مع المكتبة الواسعة لخدمة الويب؟
إديت: حتى الآن وجدت بعض المعلومات الجيدة في هذه المقالة من أوراكل. كما كان هذا الإدخال بلوق على بعض تفاصيل جافا مفيدة. ما زلت غريبة أن أرى بعض النهج الأخرى.
الطريقة النموذجية لإصدار خدمة ويب هي أن يكون للعملاء تحديد الإصدار المطلوب. يمكنك السماح بقيود بسيطة، مثل "> 2.0" أو "لوت؛ 1.5" أو "= 1.1". بطبيعة الحال، كنت ترغب في تقليل عدد الإصدارات المعتمدة لالعقم الخاصة بك. إذا لم يحدد العميل إصدارا، فإنك تفترض أحدث إصدار.
تقنيات تقديم النسخة تختلف. يدافع البعض عن استخدام عنوان ورل، ويشجع الآخرون رؤوس، وقد يتضمن البعض ذلك كمعلمة لمكالمة أبي. تقريبا لا شيء سوف تغيير اسم الأسلوب، على الرغم من. هذا ما يعادل "حزمة" أو "مساحة الاسم" إصدار رابط أوسغي يتحدث عن. وستجعل عملية الترقية صعبة للغاية، وتعيق الأشخاص عن الترقية أكثر من أي تغييرات في الخدمة الفعلية.
كما يعتمد أيضا على كيفية الوصول إلى خدمات الويب. إذا كنت تستخدم ريست، فإن الحفاظ على رؤوس عناوين ورل النظيفة واستخدامها يجعلها الأكثر منطقية (ومن المفيد الإختراق بها كمعلمة طلب بحث، إذا لزم الأمر). إذا كنت تستخدم سواب / شملريك / واتيفر-ريك، فإن وضعه في عنوان ورل عادة ما يكون جيدا.
كيف يحدد العميل الإصدار هو عادة سهلة جدا. ما هو أكثر تعقيدا هو كيفية تشغيل كافة الإصدارات في وقت واحد. معظم اللغات ليس لديها طريقة لتحميل إصدارات متعددة من نفس المكتبة / وحدة / فئة / وظيفة في نفس بيئة التشغيل (سواء كان فم، عملية، أو ما لديك). رابط أوسغي الذي قدمته هو الحل جافا للسماح بذلك.
في الممارسة العملية، سوف أوسغي يكون مبالغا فيه لمعظم الحالات. وعادة ما يكون من الأسهل إلى الوكيل طلبات مهملة إلى خادم آخر أو عملية أخرى.
أفضل طريقة ل "إصدار" خدماتك، على الرغم من ذلك، هو بناء التمدد والمرونة فيها بحيث تبقى إلى الأمام ومتوافقة إلى الوراء. وهذا لا يعني أن جميع الإصدارات يجب أن تكون متوافقة مع بعضها البعض، ولكن يجب أن تكون الإصدارات المتتالية متوافقة مع بعضها البعض.
أستطيع أن أقول لكم أن حل خلق دوابيفونكتيون، doAPIFunctionV2، و DOAPIFunctionV3، وما إلى ذلك أنتجت شيئا ولكن الصداع في مكان أعمل فيه. إضافة إلى أن عدم وجود أسماء وظيفة وصفية بشكل واضح يعني كل أنواع الجنون.
تريد أسماء وظائف أبي واضحة، وإذا كان أبي يتغير، سيكون الهدف هو محاولة القيام بذلك في طريقة متوافقة مع الخلف ممكن. أود أن أقترح إصدار نقاط الدخول الخاصة بك حتى كل نقطة دخول تدعم أبي مستقرة و دو فونكتيون في example. org/api-1.0/ قد تكون مختلفة من example. org/api-2.0 إذا كان هناك سبب وجيه لتغيير الدلالات.
لست متأكدا مما إذا كنت فهمت سؤالك بشكل صحيح. ولكن بلدي 2 سنتا. إذا تغيرت طريقة التوقيع كمعلمة جديدة أخرى، فلماذا لا يمكن جعلها اختيارية؟ ولكن إذا تم تغيير نوع بيانات المعلمة الحالية فإنه لا ينطبق.
التصويت على هذا إذا كان من الخطأ. :)
كان من المفترض أن يكون أبسط عندما يكون لديك نفس اسم طريقة خدمة ويب، ومعلمات مختلفة، منذ سنوات. :)
بمجرد كتابة خدمة ويب، فإنك تقوم بعقد مع العملاء أن هذا هو ما سوف تدعمه.
بالنسبة للأساليب القديمة أود أن أقترح تسجيل لمعرفة ما إذا كانت يتم استخدامها، ومن قبل من، لمعرفة ما إذا كان يمكنك الحصول عليها لتحديث.
بخلاف أنك أفضل رهان هو مجرد كتابة طريقة جديدة، لذلك قد يكون لديك العديد من أسماء الوظائف المماثلة التي تختلف عن طريق إصدار.
المشكلة مع تمرير في رقم الإصدار هو أن لديك لضمان تمرير العملاء دائما في عدد صحيح، والتي، إذا كنت توليد ستابس العمل، ولكن إذا كنت لا ثم وهذا هو هش جدا.
يبدو أن وضع رقم الإصدار في الاسم يعمل بشكل أفضل بالنسبة لي، لأنه يجعل من الواضح ما هو القديم، ويمكنك استخدام أوب لتسجيل الإصدارات الأقدم بسهولة من طرق خدمة الويب.

خدمات ويب إصدار.
غابريل بيشارا.
المقدمة.
خدمات الويب لا بد أن تتغير وتتطور مع مرور الوقت. وتقتضي مبادئ اقتران العمارة الموجهة نحو الخدمات أن يمكن لمقدمي الخدمات إصدار نسخة جديدة من الخدمة المشتركة دون انتظار أن يتكيف المستهلكون، وأن على مستهلكي الخدمة اختبار إصدار خدمة مشترك جديد والتصديق عليه قبل التبديل. وبناء على ذلك، قد تحتاج إلى الحصول على إصدارات متعددة من خدمة مشتركة تعمل بشكل متزامن وفي نفس الوقت يمكن الوصول إليها من قبل مختلف مستهلكي الخدمة. قد يحتاج بعض مستهلكي الخدمة إلى الاستمرار في استخدام إصدار قديم من الخدمة إلى أن يتم ترحيل شفرة المستهلك. ولذلك، فإن إصدار خدمات الويب هو موضوع هام ينبغي النظر فيه بعناية في جميع نهج المؤسسة سوا.
المعايير الحالية لخدمات الويب ليس لديها دعم واضح للإصدار، مما يتطلب من المهندسين المعماريين والمطورين لحل المشكلة من خلال تطبيق الأنماط. هذه المادة سوف:
تحديد أنواع التغييرات التي يمكن أن تحدث في الخدمات.
بحلول نهاية هذه المقالة، يجب أن يكون لديك فهم جيد للجوانب الرئيسية التي ينبغي التعامل معها عند بناء المؤسسة الخاصة بك خدمات ويب استراتيجية إصدار الإصدارات.
أنواع التغييرات.
قد يؤثر التغيير في تنفيذ خدمات الويب على مستهلكيها اعتمادا على عدد من العوامل:
تغيير في معلمات العملية لخدمة ويب. وقد يتضمن ذلك إضافة معلمات جديدة (سيؤثر ذلك على المستهلكين الحاليين)، أو تغيير في المعلمات الموجودة، مثل تغيير في مستند شمل يمكن استخدامه كمعلمة رسالة في خدمة ويب. قد تتضمن التغييرات في وثيقة شمل إضافة عناصر أو خصائص اختيارية (قد يؤثر ذلك على المستهلكين الحاليين) أو العناصر الإلزامية (سيؤثر ذلك على المستهلكين الحاليين).
ولذلك، يمكن إنشاء تصنيف للتغيير في خدمات الويب فيما يتعلق بتأثير تلك الخدمات على المستهلكين الحاليين. ويتمثل أحد النهج في تأهل التغيير الذي لن يؤثر على المستهلكين الحاليين كإصدار ثانوي وتغيير من شأنه أن يؤثر على المستهلكين الحاليين كإصدار رئيسي.
إصدار طفيفة.
الإفراج الطفيفة يمكن أن يكون واحدا من نوعين. الأول هو تصحيح علة أو تحسين الأداء. لن يؤثر هذا النوع على لغة وصف خدمات ويب (وسدل) لخدمة ويب. النوع الثاني يتكون من إضافة أساليب جديدة إلى خدمة ويب حيث يتم تغيير وسدل دون أي تأثير على مستهلكي الخدمة. ويمكن التمييز بين هذين النوعين عند وضع العلامات على تلك النسخ. على سبيل المثال، بالنسبة للنوع الأول، يمكنك تغيير المكان العشري الثاني لرقم الإصدار (1.0X)، أما بالنسبة للنوع الثاني تقوم بتغيير المكان العشري الأول لرقم الإصدار (1.Y0).
الإصدار الرئيسي.
إصدار رئيسي ينطوي على تغيير من شأنه أن يكسر التوافق مع الوراء. في هذه الحالة يجب تعديل المستهلكين. يعتبر الإصدار الذي يؤثر فقط على وظائف خدمة ويب، دون التأثير على وسدل، إصدارا رئيسيا. وذلك لأن المستهلكين الحاليين لا يمكن استدعاء الإصدار الجديد دون النظر في وظائف خدمة ويب المعدلة. الآن بعد أن قمنا بتحديد أنواع مختلفة من التغييرات وتأثيرها على المستهلكين الحاليين، دعونا نلقي نظرة على أنماط مختلفة لإصدار خدمات الويب.
أنماط.
نمط تجليد المستهلك.
عندما يتم إصدار إصدار جديد من خدمة ويب - سواء كان إصدار رئيسي أو ثانوي - يتم إخطار المستهلكين حول التغيير، وتكون مسؤولة عن تغيير التعليمات البرمجية للوصول إلى الإصدار الجديد. يتم نشر وسدل الجديد - في سجل أودي، على سبيل المثال - ويتم إرسال إخطار للمستهلكين حتى يتمكنوا من العثور على الخدمة الجديدة وإقامة ملزمة مع مزود الخدمة الجديد. إحدى الممارسات لاستخدام سجل أودي تنطوي على ربط إصدار معين من بورتريب إلى نموذج فريد. ويرتبط واحد وسدل مع تموديل واحد. يجب أن يحتوي هذا الموديل على إشارة إلى رقم الإصدار لإصدار رئيسي لأن نسختين رئيسيتين سوف تتضمن اثنين من وسدل مختلفة. قد يحتوي تموديل على إشارة إلى الإصدار الثانوي إذا كان يلزم الوصول إلى نسختين صغيرتين في وقت واحد. يمكن للمستهلك لهذا المنفذ / النسخة القيام الصفحات الخضراء أودي البحث عن الخدمات التي تعلن الامتثال من خلال ربط أنفسهم مع تموديل من النسخة المقابلة.
وقد تفرض هذه الطريقة تغييرات في شفرة المستهلكين، على الأقل في البحث الذي يجري على السجل للحصول على نسخة (رئيسية أو ثانوية) من الخدمة، حتى بالنسبة للإصدارات الطفيفة. وماذا إذا كنت بحاجة إلى اثنين من إصدارات بسيطة تعمل في نفس الوقت؟ على سبيل المثال، قد ترغب في نشر إصدار ثانوي جديد على موقع اختبار لاستخدامه من قبل عدد محدود من المستهلكين، مع الحفاظ على الإصدار القديم للباقي. يجب على مستهلكي الخدمة التي تم نشرها في موقع الاختبار تغيير نقطة نهاية الخدمة حتى لو لم يتم تعديل وسدل (لأنها نسخة ثانوية). في هذه الحالة المحددة، قد يكون من المفيد وجود طبقة من التفاعل بين المستهلكين ومقدمي الخدمات، لدفع هجرة المستهلكين المختلفة بطريقة رشيقة.
الشكل 1. المستهلك نمط ملزم.
ملاحظة: نمط ملزم المستهلك لا يعني استخدام أودي. فإنه يشير إلى حقيقة أن قرار ملزم يتم على الجانب المستهلك. سنناقش الاستخدامات المثيرة للاهتمام لهذا النمط في لحظة.
طبقة من نمط إنديركتيون.
عند إصدار إصدار ثانوي جديد من خدمة ويب، يمكن للمستهلك الانتقال بشفافية إلى الإصدار الجديد. يتم توفير هذه القدرة من خلال طبقة من غير المباشرة من خلال آلية التوجيه التي تضمن التوجيه القائم على المحتوى أو التوجيه القائم على المستخدم (استنادا إلى إب من الطالب، على سبيل المثال، أو على مدير الطالب عند نشر الأدوار الأمنية) للاتصال الإصدارات المختلفة من خدمة ويب.
استخدام طبقة من غير مباشر يسمح اثنين من الإصدارات الصغيرة للتعايش دون تغيير رمز المستهلكين، ويساعد على ضمان الهجرة رشيقة إلى إصدار جديد.
الشكل 2. طبقة نمط الإتجاه.
ولكن في حالة إصدار كبير، فإن المستهلكين سوف تحتاج إلى تغيير التعليمات البرمجية الخاصة بهم. وماذا لو، لسبب تنظيمي، نحن بحاجة إلى الهجرة إلى إصدار رئيسي جديد دون تغيير رمز المستهلكين الحالي، استدعاء الخدمة الجديدة مع العميل القديم؟ قد يحدث هذا إذا، على سبيل المثال، بعض الأسباب التنظيمية ينطوي على تغيير يمكن الوصول إليها إلا من خلال استخدام الإصدار الرئيسي الجديد من الخدمة، المقدمة من قبل شريك تجاري خارجي لمؤسستك. وهذا يؤدي إلى استخدام محول لتمكين استخدام إصدار رئيسي جديد للمستهلكين الحاليين حتى يتم تعديل كل التعليمات البرمجية للمستهلكين.
نمط المحول.
يتكون نمط الموفق من تكييف طلب العميل والاستجابة ليكون قادرا على استهلاك إصدار رئيسي جديد من الخدمة. استخدام هذا النمط يوفر هجرة أكثر سلاسة، في حالة استخدام إصدار رئيسي جديد من الخدمة إلزامي لبعض الأعمال، والتنظيمية، أو التنظيمية السبب.
الشكل 3. نمط محول.
حلول لتطبيق الأنماط.
يمكن تطبيق أنماط مختلفة بطرق مختلفة. ويمكن القيام بذلك في كود المستهلكين، ولكن هذا هو نادرا ما يحدث لأنه يمكن أن يسبب تأخيرات الترميز وزيادة تعقيد إصدار التعليمات البرمجية التعامل معها. والبديل هو استخدام طبقة الوساطة لفصل المستهلك عن مقدم الخدمة وتطبيق تلك الأنماط في طبقة الوساطة. سيوفر استخدام أوراكل سيرفيس باص كطبقة وساطة وظائف طبقة نمط الإتجاهات المقترنة بنمط المحول، مما يؤدي إلى تخفيف شفرة المستهلكين من تلك المخاوف. انظر الشكل 4.
الشكل 4. تطبيق الأنماط باستخدام أوراكل سيرفيس باص.
باستخدام هذا النهج على أساس أوراكل خدمة الحافلات تقدم هذه المزايا:
ويمكن معالجة تغيير طفيف في الإصدار دون تعديل المستهلكين، ويمكن معالجة مواقع الاختبار من خلال التوجيه القائم على المحتوى أو المستخدم.
يتم تكوين الوساطة في أوراكل سيرفيس باص بشكل رئيسي باستخدام وكلاء للوصول إلى خدمات الأعمال. في ما بين هناك خطوط الأنابيب، وتتألف من مراحل والإجراءات والفروع، والعقد التوجيه. يتم تكييف الرسالة داخل خطوط الأنابيب هذه، وتوجيه الطلبات في عقد التوجيه. ويمكن تنظيم تكوين الوكلاء والخدمات التجارية مع الإشارة إلى أرقام الإصدار. قد تتضمن الوكلاء في أوراكل سيرفيس باص في مسارها إشارة إلى الإصدار الرئيسي، وقد تتضمن خدمة الأعمال الإصدار الرئيسي والثانوي. على سبيل المثال، بالنسبة ل v1.XX الرئيسية، سيكون لدينا وكيل واحد، واحد أو أكثر من خدمات الأعمال (واحد في الإصدار الصغير)، وسدل واحد:
. و V2.XX الرئيسية:
ملاحظة: لأن بروكسيات و وسدل هي نفسها للإصدارات الطفيفة، المسار الذي يحتوي على تلك لا تحتاج إلى تضمين مرجع إلى الإصدار الثانوي.
لقد تناولنا إمكانية الوصول إلى خدمات مختلفة من خلال خدمة أوراكل للحافلات. ولكن هناك قضايا أخرى يتعامل معها، مثل نشر نسختين مختلفتين لمزود خدمة قادمين من بيئة التنمية نفسها. قد يكون لهذه الخدمات نفس جافا بلاتفورم، إنتيربريس إديتيون (جافا إي) مسار سياق وحدة ويب، لأنها قد تم تطويرها باستخدام نفس أدوات التطوير. لذلك، ما لم تقدم نص برمجي بناء يضيف مرجع إصدار في سياق وحدة جافا إي ويب، قد تحتاج إلى نشر نشر إصدارات مختلفة من نفس الخدمة على أهداف مختلفة. (الهدف هو مجموعة أو خادم مدار). انظر الشكل 5.
الشكل 5. نشر مقدمي الخدمات على أهداف مختلفة.
ملاحظة: بعض الأطر وأدوات التنمية، بما في ذلك أوراكل جديفيلوبر، أتمتة إصدار بعض مقدمي الخدمات. وقد تم تمديد هذه القدرة في أوراكل جديفيلوبر 11 المعاينة التقنية 4 للتعامل مع إصدار مكونات المركبة المكونة للخدمة (سكا) (خدمات متعددة في مركب واحد).
وسوف تستفيد خدمات العرض وخدمات التقوية (خدمات العمليات التجارية) من شفافية هذا النهج عند استهلاك خدمات أخرى تنتمي إلى طبقة خدمات الأعمال أو طبقة خدمات النفاذ إلى البيانات. ولكن ماذا عن المستهلكين من خدمات العرض؟ يمكن أن تستهلك البوابة المركبة خدمات العرض باستخدام خدمات ويب للموانئ البعيدة (وسرب) لاستهلاك المداخل عن بعد. ويمكن أيضا تطبيق طبقة نمط الإتجاه، مقترنة بنمط المحول باستخدام أوراكل سيرفيس باص، في هذه الحالة، ولكننا قد نستخدم نهجا أكثر تكيفا استنادا إلى قدرات البوابة. البوابات عادة ما تأتي مع أدوات الإدارة لتكوين الوصول إلى بورتليتس (خدمات العرض القابلة لإعادة الاستخدام). قد يكون استخدام قواعد المستخدمين المستندة إلى الأدوار والاستحقاقات لعرض جزء من البوابة المركبة، اعتمادا على خصائص المستخدم، أكثر ملاءمة لخدمات العرض التقديمي. هذا هو أكثر من مصدر قلق مع محرك البوابة مركب من مع أوراكل سيرفيس باص.
لذلك، تقديم خدمات طبعة طبقة أفضل استيعابها باستخدام نمط تجليد المستهلك. في هذا السياق، لا يتم تطبيق النمط باستخدام سجل أودي لاختيار الخدمة. في هذه الحالة، تطبيق هذا النمط يعتمد على الاستحقاقات أو محرك التخصيص التي تقدمها البوابة المركبة. جانب هام من هذا الاستخدام الخاص لهذا النمط هو أن يتم اختيار النسخة من خلال التكوين، في أداة إدارة البوابة. وبالتالي، فإنه لن يعني أي تعديل التعليمات البرمجية أو الصيانة.
يوضح الشكل أدناه كيف يمكن للبوابة المركبة أن تستهلك مداخل عبر وسرب في إصدارات مختلفة من نفس التطبيق. يتم اختيار النسخة بورتليت ليتم كشفها في محرك البوابة المركبة.
الشكل 6. تطبيق نمط تجليد المستهلك المطبق على خدمات العرض.
القيام بذلك يسمح نسختين من نفس التطبيق لتشغيل في وقت واحد، وفضح وظائف جديدة فقط للمستخدمين النهائيين المحدد استنادا إلى سمات الملف الشخصي للمستخدم.
استنتاج.
يمكن معالجة إصدار خدمات الويب بطرق متنوعة، تبعا لقيود الأعمال والطبقة التي تنتمي إليها الخدمة. في هذه المقالة قمنا بتغطية الممارسات التي يمكن تطبيقها على مجموعة متنوعة من المهام الإصدار:
الوصول إلى إصدارات متعددة لمزود الخدمة ونشرها في الوقت نفسه.
وينبغي أن تؤخذ بعض العوامل الإضافية في الاعتبار، بما في ذلك نسخ شمل المخططات وإدارة التبعيات بين الخدمات ومخططات شمل المستخدمة من قبل تلك الخدمات. وعلى المستوى التنظيمي، سيصبح من الصعب جدا التعامل معها دون استخدام الأدوات المناسبة لإدارة التبعيات ولإجراء التغييرات بشكل سليم وشامل.
عمل غابرييل بيشارا مع شركة أوراكل-بي بريزاليس والخدمات الاستشارية منذ عام 2003. وقد عمل غابرييل كمهندس معماري ومستشار في المشاريع الكبيرة، وقدم خبرة عملية وردود فعل حول المفاهيم التي يمكن أن توفر أساسا ل وبناء نظم معلومات جديدة. وتشمل اهتماماته منهجيات لتحديد البرمجيات والبرمجيات المعمارية، مع تركيز قوي على تكامل الأعمال و سوا.

خدمة ويب إستراتيجية الإصدار
ميكروسرفيسز المعرض: المادة.
استراتيجيات التصميم لخدمات ويب الإصدار.
التكيف مع احتياجات الأعمال التجارية.
لطالما كان إصدار التطبيقات يشكل تحديا لمجتمع مطوري البرامج. مع إدخال خدمات الويب، تصبح هذه المسألة أكثر صعوبة حيث أن المطورين يتعاملون مع مجموعة أكثر توزيعا من المكونات التي ليست بالضرورة تحت سيطرتهم.
وهناك حاجة إلى استراتيجية قوية للإصدار لدعم إصدارات متعددة من خدمات الويب في التنمية. يمكن أن يسمح هذا بالترقيات والتحسينات التي يجب إجراؤها على خدمة ويب، مع دعم الإصدارات التي تم إصدارها مسبقا بشكل مستمر. يمكن لاستراتيجية الإصدار الصحيح أن تعظيم استخدام التعليمات البرمجية وتوفر نهجا أكثر قابلية للإدارة لتسمية خدمات الويب ونشرها وصيانتها.
مسألة الإصدار هو أمر معقد، وهذه المقالة لا تحاول الإجابة على كل سؤال حول إصدار خدمات شمل و ويب. ومع ذلك، هناك بعض النهج الرئيسية وممارسات التصميم التي كانت مفيدة في تطويرنا أننا سوف نشارك معكم هنا. والنهج الذي سنتخذه هو البدء على مستوى المكون (مخططات شمل) والعمل على ما يصل إلى مستوى أعلى من التجريدات على مستوى الخدمة، بما في ذلك الواجهات والهيكل القائم على الخدمات (سوا). على طول الطريق، ونحن نأمل في نقل بعض أفضل الممارسات الهامة التي يمكن تطبيقها على دمج تقنيات الإصدار على مستويات مختلفة من التصميم.
دعونا نبدأ من خلال النظر في أهمية مخططات شمل.
أهمية مخططات شمل في الإصدار.
يجب أن يقوم إصدار خدمات الويب أولا بالنظر في كيفية إصدار مخططات شمل المستخدمة. يمكن اتخاذ عدد من النهج إلى مخططات شمل، بما في ذلك استخدام سمة إصدار الوصف المنطقي، وتغيير الموقع الفعلي للمخطط، والاستفادة من مساحات أسماء شمل.
توفر مساحات أسماء شمل آلية تحديد ل شمل، حيث يمكن تعريف العناصر المعرفة في مساحة الاسم بشكل فريد. وعادة ما تستخدم مساحات الأسماء لتقليل اصطدام الأسماء بين المخططات، ولكن يمكن استخدامها أيضا كآلية تحكم في الإصدار. في ما يلي مثال بسيط يوضح كيفية استخدام مساحات الأسماء للإصدار:
سوف تكون هناك حاجة إلى خدمة ويب تشير إلى مخطط تم إصداره لديك معرفة الإصدار لأنه تم إنشاء إنتوث تارجيتنامسباس. فائدة هذا النهج هو أنه بمجرد تحديث تارجيتنامسباس، أي العملاء التي تشير إلى أنها مطلوبة للقيام بشيء ما. هذا يفرض تلقائيا مستوى التحكم في الإصدار، تتطلب بعض الإجراءات على جزء العميل.
الجانب السلبي من هذا النهج هو أن أي تغيير تدريجي تتطلب العميل لتغيير أيضا. من الواضح أن تغيير غير متوافق مثل إزالة عملية وسدل المستخدمة من قبل العميل يتطلب تعديل العميل. ولكن، سيظل تغيير مثل إضافة سمة اختيارية إلى المخطط متوافق مع الشفرة الحالية. أحد الأسئلة الرئيسية التي يجب معالجتها في التصميم الخاص بك هو: ما هي التغييرات التي يجب أن تشكل إصدار خدمات ويب جديد؟ إذا كنت تأخذ النهج أن أي تغيير النتائج في مساحة اسم جديدة، وهذا سوف يضع عبئا كبيرا على المطورين باستخدام المخططات.
أحد الحلول الهجينة المقترحة هو استخدام مزيج من مساحة الاسم ومعرفات الإصدار. سيتم تحديث تارجيتنامزباس فقط للتغييرات غير المتوافقة. لأي تغيير متغير، متوافق، يمكن استخدام السمة إد للإصدار لتعريف التنقيح الجديد. يمكن أن يقلل النهج التالي بشكل كبير من كمية الصيانة المطلوبة من قبل المطور عند إصدار إصدارات جديدة من خدمة ويب.
التوافق نسخة يمكن أن يكون أمرا صعبا جدا لتحديد. وبدون أي أدوات تطویر متینة متاحة لھذا، یتحمل فریق التنمیة مسؤولیة تحدید ما إذا کان الإصدار الجدید یحافظ علی التوافق. في هذا القسم، قدمنا ​​عددا من النهج لإصدار مخططات شمل. إذا كنت تفكر في الإصدار على هذا المستوى من الهندسة المعمارية الخاصة بك، فإننا نوصي باستخدام مساحات أسماء شمل في قدرة محدودة للإشارة إلى ترقيات النسخة الرئيسية إلى شمل ولكن من الممارسة الجيدة لاختبار الخدمات الخاصة بك بشكل كامل للتحقق من توافق الإصدار.
تسمية اتفاقيات النسخ.
وجود اسم لكل إصدار من خدمة ويب أمر ضروري لتبسيط إدارة الإصدارات. وينبغي أن تسهل استراتيجية التسمية التعرف على نسخ متعددة من خدمة الويب، بما في ذلك السطوح البينية القائمة والجديدة. ويمكن تنفيذ استراتيجيات مختلفة هنا، بما في ذلك استخدام استراتيجية تسمية متتابعة أو طوابع التاريخ.
عندما تقوم بتسمية الإصدار الخاص بك بالتتابع يمكنك استخدام اتفاقية "فماجور #.Minor # / SERVICE_NAME، حيث يكون الرائد # هو الإصدار الرئيسي و مينور # هو إصدار العدد الثانوي. وسوف يتطلب إصدار رئيسي على الأرجح حدوث تغيير في رمز العميل لاستخدام الإصدار الجديد، في حين أن إصدار طفيفة محاولة للحفاظ على التوافق مع العميل إلى الوراء. نسخة صغيرة يمكن أن تشكل تعديلا على خدمة ويب التي من شأنها أن تؤثر على النظام الداخلي فقط.
يحتوي اسم الأسلوب القياسي لخدمة ويب على "_v # _ #" إلحاق بنهاية اسمه. وبالتالي، بالنسبة إلى خدمة جيتبرودوكاتالوغ يمكننا تعريف العملية باسم "getProductCatalog_v1_1". أو، إذا كنت تقوم بتطبيق هذا على مساحات أسماء شمل، فقد تبدو كما يلي:
طريقة أخرى لتسمية الإصدارات هي استخدام الطوابع التاريخ كجزء من مساحة الاسم. يساعد التاريخ على تحديد تسلسل النسخة. هذا الاصطلاح التسمية لا تظهر اصدار رئيسي او ثانوي. وإليك كيفية ظهور ذلك في تعريفنا للمخطط:
الشيء المهم أن نتذكر هو أنه ليس هناك واحد أفضل حل في كيفية تسمية الإصدارات. يعتمد نهجك على استراتيجية النشر التي تستخدمها والمتطلبات المحددة التي قد يحتاجها عملاؤك للتمييز بين الإصدارات والحفاظ على التوافق.
وينبغي أيضا أن يكون واضحا أن هذه التقنيات يمكن أن تصبح غير قابلة للإدارة للغاية إذا كان لديك لتطبيقها على كل مكون في التصميم الخاص بك.
لمعالجة هذا، دعونا ننتقل إلى عدد قليل من ممارسات التصميم الهامة لبناء المزيد من الخدمات الخشنة الحبيبات مع أنماط التصميم والهندسة الخدمية المنحى.
استخدام واجهات خدمات الويب.
ومع قيام المنظمات ببناء ونشر ونشر خدمات الويب، يصبح من الواضح أن هناك حاجة إلى مستوى أعلى من الإصدار والإدارة. يجب أن تبدأ التفكير في الخدمات من مستوى الأعمال، وليس من الواجهات التقنية التي يتعرض لها. ومع ذلك، فإن العديد من المنظمات التي تحقق في خدمات الويب لا تزال تنظر إليها باعتبارها امتدادا للنماذج الموجهة نحو الكائن. أنها تجعل من الخطأ في اتخاذ الأشياء الموجودة وتعريضها مباشرة مع واجهة خدمات الويب. وهذا على الأرجح تقديم خدمات الويب التي غرامة الحبيبات وصعبة الاستخدام. كما يمكن أن يجعل من الصعب دمج نهج متسق في إصدار خدمات الويب.
بدلا من ذلك، التفكير من وجهة نظر وسدل أولا، وخريطة لتنفيذ الخلفية في وقت لاحق. يوفر هذا النهج بنية أكثر ارتباطا بشكل فضفاض، مما يقلل من التبعيات على تطبيقات محددة. يجب عليك أيضا أن تبحث عن أنماط التصميم، مثل واجهة خدمات الويب، للمساعدة في إنشاء مكونات الخشنة الحبيبات. هذا النمط يأخذ التعقيد من الواجهات التي تتعرض. وبدلا من وجود نقاط واجهة متعددة إلى مجموعة من الخدمات، يمكن تصميم خدمات الويب المركبة باستخدام واجهات أعمال أكثر بساطة ومفهومة جيدا.
وكما يوضح الشكل 1، يمكن استخدام الواجهة لتبسيط الخطوات المطلوبة لوضع طلب تغيير الطلب. في حين أن هذه الصورة تظهر الواجهة المستخدمة من وجهة نظر مزود، يمكن للمستهلك من تصميم واجهات أيضا لتبسيط الوصول إلى الخدمات.
ويمكن أن يوفر استخدام هذا النمط عددا من الفوائد، بما في ذلك التقليل إلى أدنى حد من مستوى الاقتران بين المستهلك والخدمة، وخلق نقطة تحكم للإدارة، وتحسين الأداء العام عن طريق تقليل عدد المكالمات الشبكية. ويمكن أن يوفر نمط الواجهة أيضا إطارا لإدارة التعقيد المتأصل في دعم إصدارات خدمات الويب المتعددة في وقت واحد.
واحد من تنفيذ هذا النمط، هو مبين في الشكل 2، يخلق مستويات من التجريد عن طريق فصل التعليمات البرمجية إلى ثلاثة مستويات متميزة من الطبقات: فئات معالج الطلب، الطبقات تدفق الأعمال واجهة، وفئات كائن الأعمال.
الطبقة الإدارية، فئة واجهة الدورة، هي المسؤولة عن تسلسل فئات كائنات الأعمال الصغيرة معا. كل فئة عنصر الأعمال تحتوي على وحدة فرعية من منطق المعالجة، وتسلسل كل هذه الفئات كائن الأعمال يوفر منطق الأعمال الأساسية. كل فئة واجهة جلسة في حد ذاته لا يحتوي على منطق المعالجة، ولكن من خلال تجميع الأشياء الأعمال معا فإنه ينفذ منطق الأعمال المطلوب.
هذا العمارة يحل العمليات من بعضها البعض، مما يسمح بإعادة استخدام المكونات. كما أنه يساعد في إدارة تعقيد خدمات الويب كما تتغير متطلبات العمل في إصدارات مختلفة من الخدمة. يتم استخلاص العمليات التي يتم استدعاؤها لتنفيذ متطلبات العمل في أجزاء فردية من شفرة البرمجية التي تدير سلاسل فئة واحدة معا لتنفيذها في تسلسل. من خلال تسلسل هذه القطع من التعليمات البرمجية معا، يتم تنفيذ العمليات التجارية المطلوبة للانضمام إلى تدفق عملية تجارية محددة. وهكذا، من خلال بناء الطبقات إدارة متعددة، يمكن تنفيذ التدفقات التجارية المختلفة والحفاظ عليها في وقت واحد.
أهمية البنى الموجهة نحو الخدمة.
ويعتبر تصميم الخدمات ذات الحبيبات الخشنة جانبا مهما من استراتيجية إصدار البيانات، مما يسهل من واجهات العميل ويعظم إعادة الاستخدام. تصميم واجهات على مستوى التنفيذ يمكن أن تساعد، لكنه لا يزال يتطلب تغيير كبير في البنية التحتية الأساسية على مختلف المستويات التي شخص ما للتعامل معها. ما هو مطلوب حقا هو منصة سوا التي يمكن أن تساعد في إدارة دورة حياة كاملة من خدمات الويب.
يوفر النهج القائم على نظام سوا مكونات البرمجيات كمجموعة من خدمات الأعمال الموزعة. تلعب خدمة الأعمال دور كيان واحد يمثل تطبيق نشاط تجاري، وقد يتضمن العديد من موارد تكنولوجيا المعلومات ومنصات ومكونات. نموذج، مبسطة في الشكل 3، يفصل أدوار المستهلك، مزود، والتسجيل. يقوم مقدم الخدمة بتسجيل الخدمات المتاحة في السجل الذي يمكن للمستهلك اكتشافه لاحقا والاستدعاء إليه. المستهلكون ليسوا على دراية مباشرة بنقطة نهاية خدمة معينة أو تفاصيل التنفيذ. ويوفر النظام سوا درجة أكبر من الفصل بين مقدم الخدمة والمستهلك، ومع إجراء تغييرات على الخدمة، يمكن أن تساعد سوا على تقليل التأثير على المستهلك.
وعادة ما يتطلب نظام سوا نوعا من الإطار أو المنصة التي يمكن أن تعمل كوسيط بين مقدمي الخدمات والمستهلكين. وبدون هذا الوسيط، سيتعين على المستهلكين بناء تكامل أكثر إحكاما مع نقطة نهاية خدمة. ويمكن تنفيذ هذا الوسيط كوسيلة أو بوابة أو وسيط يتناول مسائل مثل الأمن والتوجيه وإدارة سلا وإدارة دورة الحياة.
إن خصائص إدارة دورة الحياة التي تقدمها المنصة هي المفتاح لنقاشنا حول الإصدار. بعض خدمات الويب ومنصات إدارة سوا في السوق اليوم تقدم الدعم لإدارة دورة الحياة. قد يتضمن ذلك: القدرة على التعامل مع إصدارات متعددة من الخدمة في نفس الوقت إيقاف الخدمات أو تقاعدها بطريقة رشيقة توجيه الطلبات إلى نقطة نهاية الخدمة المناسبة بناء على طلب تحويل الطلبات والردود للحفاظ على التوافق الخلفي (على سبيل المثال، باستخدام زسلت) النشر الآلي للإصدارات الجديدة دون الحاجة إلى إيقاف تشغيل النظام إدارة التبعيات الموجودة بين خدمات ويب مختلفة إدارة دورة الحياة هي أيضا أكثر بكثير من مجرد إدارة نشر خدمات ويب. من وجهة نظر خدمة الأعمال، قد تشمل إدارة دورة الحياة العديد من المنصات، وخوادم التطبيقات، وحالات قاعدة البيانات. لإدارة هذا المستوى من الخدمة حقا، يجب أن تنظر في كيفية نشر كافة مكونات التطبيقات والبنية التحتية عناصر التطبيق وإدارتها.
لنلق نظرة على مثال يوضح مشكلة في الإصدارات الشائعة. في الشكل 4، قدم مزود نسخة أولية من خدمة ويب، V1.0. سيقوم النظام تلقائيا بتوجيه طلبات هذه الخدمة إلى نقطة نهاية خدمة مناسبة. ويمكن تحديد التوجيه استنادا إلى المعلومات الموضوعة في سجل أودي، أو يمكن لنموذج الإدارة الأساسي إدارة ذلك (على سبيل المثال، من خلال السطوح البينية وسدم).
في مرحلة ما، يتم نشر نسخة ثانية من الخدمة التي تحافظ على التوافق الخلفي. ضمن الخدمة الخدمية، يتم تعريف الخدمة الجديدة على أنها تدعم كل من خدمة الأعمال الأصلية وخدمة الأعمال الجديدة. ويمكن توسط الطلبات المقدمة لخدمة الأعمال الأصلية إما إلى نقطة نهاية الخدمة. ويتعين على المستهلكين الراغبين في الوصول إلى الوظائف الجديدة إجراء التغييرات البرنامجية المناسبة.
ويتيح هذا النهج لإصدار الإصدارات لمنظمة تكنولوجيا المعلومات التكيف بشكل أفضل مع التغييرات التي تتطلبها الأعمال التجارية. يمكن الحفاظ على إصدارات متعددة من الخدمة في وقت واحد دون التأثير على المستهلك. الإصدارات القديمة يمكن أن تقاعد بأمان، ويمكن للمستهلكين الترقية في وقتهم الخاص، بدلا من أن يضطر إلى عندما يتم الافراج عن الإصدارات الجديدة.
حتى مع تصميم قوي وهندسة معمارية قوية للإصدار، لا يزال هناك عامل البشري التي يجب النظر فيها في هذه العملية. سيساعدك فهم دورة حياة الإصدار على تنفيذ إصدارات جديدة وإلغاء الإصدارات القديمة بشكل فعال. الخطوة الأولى في هذه العملية هي وضع خطة متينة معا تصف دورة حياة خدمات الويب التي يتم دعمها. قد تتضمن هذه الخطة الخطوات التالية:
1. تحديد عدد المرات التي سيتم الافراج عن الإصدارات. عند النظر في التردد، يجب أن تنظر في عدد إصدارات خدمة ويب التي تريد دعم في موازاة ذلك.
2. فهم الإطار الزمني الذي تتوقع من المستهلكين الانتقال إلى إصدار جديد من الخدمة. قد تكون منصة إدارة خدمات الويب قادرة على تقديم إرشادات حول استخدام الخدمة لتحديد الوقت المناسب للتخلص التدريجي من الإصدارات القديمة.
3. النظر في إطلاق الطيار أو الإفراج المبكر عن إصدار جديد. إعطاء المستهلكين فرصة لاختبار التوافق وتحديد آثار الشفرة المحتملة.
4. النهج قد يتم الافراج عن خدمات ويب إصدار نفس الطريقة برامج حزم. يجب أن تتبع التغييرات في الخدمة، سواء كنتيجة لإصلاحات الأخطاء أو طلبات الشركاء أو ترقيات المواصفات، دورة إصدار محددة.
5. قم بتوصيل إستراتيجية إصدار خدمات ويب الخاصة بك إلى مستخدمي خدمة ويب.
بمجرد وضع استراتيجية الإصدار لكل إصدار يجب عليك بعد ذلك النظر في الخطوات التالية:
1. بعد إجراء التغييرات المناسبة على الخدمات الخاصة بك، والقيام وحدة واختبار وظيفي للخدمة.
2. نشر الخدمة الجديدة من خلال المخطط المناسب و وسدل وتغييرات الخدمة. قد تتضمن هذه الخطوة التسجيل إلى سجل أودي أو منصة خدمات ويب.
3. إعلام المستهلكين من الخدمة الجديدة الخاصة بك والطيار الإصدارات الجديدة مع واحد من المستهلكين.
4. قم بتشغيل الإصدارات الجديدة والقديمة بالتوازي مع الإطار الزمني الذي خصصته في خطة الإصدار.
5. إعلام المستهلكين من الخدمة الخاصة بك من التاريخ الذي تتوقع أن إبطال الإصدارات القديمة.
6. إزالة الإصدارات القديمة من أوصاف وسدل وسجلات أودي لمنع المستهلكين الجدد من اكتشاف واستخدام الإصدارات القديمة.
7. إزالة وظيفة من الخدمة القديمة، وإضافة في الوظائف المناسبة بحيث يتم إخطار المستهلكين الحاليين بشكل صحيح (على سبيل المثال، من خلال خطأ سواب) أن النسخة القديمة لم تعد معتمدة.
ويظهر الشكل الأول للنشر في الشكل 5. ويظهر التقويم في أرباع التقويم المالي للشركة. ويمكن تقديم النسخة الجديدة في بداية الربع (على سبيل المثال، الربع الأول من عام 2003). وهي صالحة لمدة أربعة أرباع ثم غروب الشمس في بداية الربع الأول من عام 2004. وفي هذه الحالة، يمكن إعطاء المستهلك من الخدمة ستة أشهر للتحويل إلى الإصدار الجديد. يمكنك أيضا إصدار إصدارات صغيرة بين الإصدارات الرئيسية. ويمكن بعد ذلك طي هذه الإصدارات الطفيفة إلى الإصدار 2.0 خدمة ويب عند إصداره.
قدمت هذه المقالة عددا من الاعتبارات عند إصدار خدمات ويب. سواء كان ذلك في وضع نهج الإصدار ل مخططات أو بناء نظام إصدار كامل النطاق باستخدام نهج سوا، وهناك بضع نقاط رئيسية نود أن أترك لكم مع.
أولا، نأمل أن يكون من الواضح أن الإصدار يمكن أن يصبح كابوسا كما يمكنك نشر المزيد والمزيد من الإصدارات من الخدمة الخاصة بك، وخاصة إذا كان يتم تقديم الخدمة لمختلف المستهلكين. يجب أن يكون الهدف من التصميم الخاص بك هو بناء المكونات القابلة لإعادة الاستخدام التي يمكن الاستفادة منها وإعادة استخدامها عبر الإصدارات التي تدار. وعلى المدى الطويل، سيؤدي ذلك إلى خفض تكاليف الصيانة والنشر.
ثانيا، لا نقلل من تأثير هذه التغييرات على المستهلك. في حين أن التصميم الذي تقدمه قد يقلل من تكاليف التطوير الخاص بك، يجب عليك أيضا النظر في كيفية تأثير هذه التغييرات على المستهلك النهائي. ويعد توافق الخدمة أمرا أساسيا في ذلك، وإذا كانت الخدمات الجديدة تحافظ على توافقها مع الخلف، فلا ينبغي تغيير المستهلكين الراغبين في استخدام الوظائف الموجودة. The architecture should provide an easy migration and upgrade path for them.
Third, you want to strive to isolate the technical implementation and provide a clear separation between the consumer and provider. This might be implemented using design patterns such as the Facade, or it could require an SOA-based approach. Either way, the notion of coarse-grained business services offers a more loosely coupled architecture where consumers and providers can change without impacting the other party.
The last piece of advice we could offer is to not attempt to build the entire versioning infrastructure yourself. If you look at the requirements for manageability, they include a wide range of features such as routing, transformation, versioning, and security. Leveraging a vendor offering, especially one that provides a service-oriented approach IT management, can go a long way toward offering an architecture that can truly adapt to the changing needs of the business.
Published April 5, 2004 – Reads 53,759.
كوبيرايت & كوبي؛ 2004 SYS-CON Media, Inc. — كل الحقوق محفوظة.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Chris Peltz.
Chris Peltz is a senior architect within HP's.
Developer Resources Organization (devresource. hp), providing technical and architectural consulting to enterprise customers in the areas of J2EE, Web services, and.
More Stories By Anjali Anagol-Subbarao.
Anjali Anagol-Subbarao works in HP's IT organization as an IT architect. She has 12 years of IT experience, the last five in Web services. Her book on J2EE Web services on BEA WebLogic was published in October 2004.
Click this link to view as XML.
ADD THIS FEED TO YOUR ONLINE NEWS READER.
Cloud Expo.
كل من سحابة في معرض الغيمة!
حاويات - ميكروسرفيسز - ويبرتس - ديفوبس.
انضم إلينا في مركز جافيتس في نيويورك، نيويورك، 6-8 يونيو.
• البيانات الكبيرة | تحليلات.
• انترنت الأشياء.
سجل الان!
حفظ على الخاص بك "ممر الذهبي"! اتصل بالرقم 201.802.3020.
أو اضغط هنا للتسجيل.
أرسل مقترحك للتحدث عن معرض كلاود إكسبو القادم في نيويورك.
يرجى الاتصال على الرقم 201.802.3021.
الأحداث (في) سيس-كون.
كارمن (أت) سيس-كون.
كل الحقوق محفوظة. جميع العلامات هي علامات تجارية لشركة وليتزر، Inc.
يحظر الاستنساخ كليا أو جزئيا في أي شكل أو وسط دون إذن كتابي صريح من وليتزر، وشركة.

No comments:

Post a Comment