تقنية الدفع

تقنية الدفع، والمعروفة أيضاً باسم دفع الخادم، هي طريقة اتصال يبدأ فيها الخادم عملية الاتصال بدلاً من العميل . يختلف هذا النهج عن طريقة " السحب " حيث يبدأ العميل عملية الاتصال. [ 1 ]

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

في ظل ظروف معينة، مثل سياسات الأمان التقييدية التي تحظر طلبات HTTP الواردة ، يتم أحيانًا محاكاة تقنية الدفع باستخدام أسلوب يُسمى الاستقصاء. في هذه الحالات، يتحقق العميل دوريًا من الخادم لمعرفة ما إذا كانت هناك معلومات جديدة متاحة، بدلاً من تلقي تحديثات تلقائية.

للاستخدام العام

تُعدّ المؤتمرات المتزامنة والرسائل الفورية أمثلة على خدمات الدفع. تُرسل رسائل الدردشة، وأحيانًا الملفات، إلى المستخدم فور استلامها من قِبل خدمة المراسلة. تسمح كل من برامج الند للند اللامركزية (مثل WASTE ) والبرامج المركزية (مثل IRC أو XMPP ) بإرسال الملفات، ما يعني أن المُرسِل هو من يبدأ عملية نقل البيانات وليس المُستقبِل.

قد يكون البريد الإلكتروني نظام دفع أيضًا: SMTP هو بروتوكول دفع (انظر البريد الإلكتروني بالدفع ). مع ذلك، تستخدم الخطوة الأخيرة - من خادم البريد إلى جهاز الكمبيوتر - عادةً بروتوكول سحب مثل POP3 أو IMAP . تجعل برامج البريد الإلكتروني الحديثة هذه الخطوة تبدو فورية من خلال استطلاع خادم البريد بشكل متكرر، والتحقق منه باستمرار بحثًا عن رسائل جديدة. يتضمن بروتوكول IMAP أمر IDLE ، الذي يسمح للخادم بإبلاغ العميل عند وصول رسائل جديدة. كان جهاز بلاك بيري الأصلي أول مثال شائع للبريد الإلكتروني بالدفع في سياق لاسلكي.

مثال آخر هو شبكة PointCast ، التي حظيت بتغطية واسعة في التسعينيات. كانت تقدم الأخبار وبيانات سوق الأسهم كشاشة توقف. دمجت كل من نتسكيب ومايكروسوفت تقنية الدفع عبر تنسيق تعريف القناة (CDF) في برامجهما في ذروة المنافسة بين المتصفحات ، لكنها لم تحظَ بشعبية كبيرة. اختفى تنسيق تعريف القناة (CDF) من متصفحات ذلك الوقت، واستُبدل في العقد الأول من الألفية الثانية بنظام RSS (نظام السحب).

تشمل الاستخدامات الأخرى لتطبيقات الويب التي تدعم خاصية الدفع توزيع تحديثات البرامج ("تحديثات الدفع")، وتوزيع بيانات السوق (مؤشرات الأسهم)، وأنظمة الدردشة/المراسلة عبر الإنترنت ( الدردشة عبر الإنترنت )، والمزادات، والمراهنات والألعاب عبر الإنترنت، ونتائج المباريات الرياضية، ووحدات المراقبة، ومراقبة شبكة أجهزة الاستشعار .

أمثلة

إشعارات الويب

يُعدّ اقتراح Web Push، الذي قدمته فرقة عمل هندسة الإنترنت (IETF)، بروتوكولًا بسيطًا يستخدم بروتوكول HTTP الإصدار 2 لنقل الأحداث في الوقت الفعلي، مثل المكالمات أو الرسائل الواردة، والتي يمكن إرسالها (أو "دفعها") في الوقت المناسب. يجمع هذا البروتوكول جميع الأحداث في جلسة واحدة، مما يضمن استخدامًا أكثر كفاءة لموارد الشبكة والاتصالات اللاسلكية. تقوم خدمة واحدة بتجميع جميع الأحداث وتوزيعها على التطبيقات فور وصولها. وهذا يتطلب جلسة واحدة فقط، مما يجنب تكاليف التشغيل المكررة. [ 2 ]

تُعدّ إشعارات الويب جزءًا من معيار W3C ، وتُعرّف واجهة برمجة تطبيقات (API) لإشعارات المستخدم النهائي. يسمح الإشعار بتنبيه المستخدم بحدثٍ ما، مثل وصول بريد إلكتروني، خارج سياق صفحة الويب. [ 3 ] وكجزء من هذا المعيار، تمّ تطبيق واجهة برمجة تطبيقات الدفع (Push API) بالكامل في متصفحات Chrome و Firefox و Edge ، وجزئيًا في Safari اعتبارًا من فبراير 2023. [ 4 ] [ 5 ]

دفع خادم HTTP

تُعدّ تقنية دفع البيانات من خادم HTTP (المعروفة أيضًا باسم بث HTTP) آليةً لإرسال بيانات غير مطلوبة (غير متزامنة) من خادم الويب إلى متصفح الويب . ويمكن تحقيق هذه التقنية عبر عدة آليات.

كجزء من HTML5، تسمح واجهة برمجة تطبيقات Web Socket لخادم الويب والعميل بالتواصل عبر اتصال TCP مزدوج الاتجاه .

بشكل عام، لا يُنهي خادم الويب الاتصال بعد إرسال بيانات الاستجابة إلى العميل. بل يُبقي الاتصال مفتوحًا، بحيث يُمكن إرسال أي حدث طارئ (مثل تغيير في البيانات الداخلية يتطلب إبلاغ عميل واحد أو أكثر) فورًا؛ وإلا، سيُضطر الخادم إلى وضع الحدث في قائمة الانتظار حتى استلام طلب العميل التالي. تُوفر معظم خوادم الويب هذه الخاصية عبر CGI (مثل نصوص Non-Parsed Headers في خادم Apache HTTP ). [ 6 ] [ 7 ] وتعتمد هذه الطريقة على ترميز نقل البيانات المُجزأ .

ثمة آلية أخرى تتعلق بنوع MIME خاص يُسمى multipart/x-mixed-replace، والذي قدمته نتسكيب عام ١٩٩٥. تُفسر متصفحات الويب هذا النوع على أنه مستند يتغير كلما أرسل الخادم نسخة جديدة إلى العميل. [ ٨ ] لا يزال مدعومًا من قبل فايرفوكس وأوبرا وسفاري حتى اليوم، ولكنه يُتجاهل من قبل إنترنت إكسبلورر [ ٩ ] ويدعمه كروم جزئيًا فقط . [ ١٠ ] يمكن تطبيقه على مستندات HTML ، وكذلك على بث الصور في تطبيقات كاميرا الويب .

يتضمن اقتراح WHATWG لتطبيقات الويب 1.0 [ 11 ] آليةً لإرسال المحتوى إلى المستخدم. في 1 سبتمبر 2006، طبّق متصفح الويب Opera هذا النظام التجريبي الجديد ضمن ميزة تُسمى " الأحداث المرسلة من الخادم " [ 12 ] [ 13 ] . وهي الآن جزء من معيار HTML5 [ 14 ] .

بوشليت

في هذه التقنية، يستغل الخادم اتصالات HTTP المستمرة ، مما يُبقي الاستجابة "مفتوحة" بشكل دائم (أي أن الخادم لا يُنهي الاستجابة أبدًا)، وبالتالي يُوهم المتصفح بالبقاء في وضع "التحميل" بعد اكتمال تحميل الصفحة الأولي. ثم يُرسل الخادم دوريًا أجزاءً من جافا سكريبت لتحديث محتوى الصفحة، مُحققًا بذلك خاصية الدفع. باستخدام هذه التقنية، لا يحتاج العميل إلى تطبيقات جافا صغيرة أو أي إضافات أخرى للحفاظ على اتصال مفتوح مع الخادم؛ إذ يتم إخطار العميل تلقائيًا بالأحداث الجديدة التي يُرسلها الخادم. [ 15 ] [ 16 ] مع ذلك، يتمثل أحد عيوب هذه الطريقة في عدم قدرة الخادم على التحكم في مهلة المتصفح؛ إذ يصبح تحديث الصفحة ضروريًا دائمًا في حال حدوث مهلة من جانب المتصفح.

استطلاع رأي مطول

لا يُعدّ الاستقصاء المطوّل بحد ذاته عملية دفع حقيقية؛ بل هو شكلٌ مُعدّل من تقنية الاستقصاء التقليدية، ولكنه يسمح بمحاكاة آلية الدفع في الظروف التي يتعذر فيها الدفع الحقيقي، مثل المواقع التي تتبنى سياسات أمنية تتطلب رفض طلبات HTTP الواردة. [ 17 ] [ 18 ]

في تقنية الاستقصاء المطوّل، يطلب العميل الحصول على مزيد من المعلومات من الخادم تمامًا كما في الاستقصاء العادي، ولكن مع توقع عدم استجابة الخادم فورًا. إذا لم يكن لدى الخادم أي معلومات جديدة للعميل عند استلام الاستقصاء، فبدلًا من إرسال استجابة فارغة، يُبقي الخادم الطلب مفتوحًا وينتظر توفر معلومات الاستجابة. بمجرد توفر معلومات جديدة، يُرسل الخادم فورًا استجابة HTTP إلى العميل، مُنهيًا بذلك طلب HTTP المفتوح. عند استلام استجابة الخادم، يُرسل العميل غالبًا طلبًا آخر للخادم مباشرةً. بهذه الطريقة، يتم التخلص من زمن استجابة الاستجابة المعتاد (الوقت بين توفر المعلومات لأول مرة وطلب العميل التالي) المرتبط عادةً باستقصاء العملاء. [ 19 ]

على سبيل المثال، BOSH هي تقنية HTTP شائعة وطويلة الأمد تستخدم كبديل للاستقصاء الطويل لاتصال TCP المستمر عندما يكون من الصعب أو المستحيل استخدام مثل هذا الاتصال مباشرة (على سبيل المثال، في متصفح الويب)؛ [ 20 ] وهي أيضًا تقنية أساسية في XMPP ، التي تستخدمها Apple لدعم دفع iCloud الخاص بها.

مرحلات مقبس XML الفلاشية

This technique, used by chat applications, makes use of the XML Socket object in a single-pixel Adobe Flash movie. Under the control of JavaScript, the client establishes a TCP connection to a unidirectional relay on the server. The relay server does not read anything from this socket; instead, it immediately sends the client a unique identifier. Next, the client makes an HTTP request to the web server, including this identifier with it. The web application can then push messages addressed to the client to a local interface of the relay server, which relays them over the Flash socket. The advantage of this approach is that it appreciates the natural read-write asymmetry that is typical of many web applications, including chat, and as a consequence it offers high efficiency. Since it does not accept data on outgoing sockets, the relay server does not need to poll outgoing TCP connections at all, making it possible to hold open tens of thousands of concurrent connections. In this model, the limit to scale is the TCP stack of the underlying server operating system.

Reliable Group Data Delivery (RGDD)

In services such as cloud computing, to increase reliability and availability of data, it is usually pushed (replicated) to several machines. For example, the Hadoop Distributed File System (HDFS) makes 2 extra copies of any object stored. RGDD focuses on efficiently casting an object from one location to many while saving bandwidth by sending minimal number of copies (only one in the best case) of the object over any link across the network. For example, Datacast[21] is a scheme for delivery to many nodes inside data centers that relies on regular and structured topologies and DCCast[22] is a similar approach for delivery across data centers.

Push notification

الإشعار الفوري هو رسالة تُرسل من خادم أو تطبيق إلى واجهة المستخدم، مثل تطبيقات الجوال [ 23 ] أو تطبيقات سطح المكتب. أطلقت آبل خدمة الإشعارات الفورية لأجهزة آيفون عام 2009، [ 24 ] وفي عام 2010، أطلقت جوجل خدمة "Google Cloud to Device Messaging" (التي حلت محلها لاحقًا خدمة Google Cloud Messaging ثم خدمة Firebase Cloud Messaging ). [ 25 ] في نوفمبر 2015، أعلنت مايكروسوفت عن توسيع خدمة إشعارات ويندوز لتشمل بنية منصة ويندوز العالمية، مما يسمح بإرسال البيانات الفورية إلى ويندوز 10 ، وويندوز 10 موبايل ، وإكس بوكس ، وغيرها من المنصات المدعومة باستخدام استدعاءات واجهة برمجة التطبيقات العالمية وطلبات POST. [ 26 ]

تنقسم الإشعارات الفورية بشكل أساسي إلى نوعين: الإشعارات المحلية والإشعارات عن بُعد. [ 27 ] بالنسبة للإشعارات المحلية، يقوم التطبيق بجدولة الإشعار بالتنسيق مع نظام تشغيل الجهاز. ويضبط التطبيق مؤقتًا داخليًا، شريطة أن يكون قادرًا على العمل باستمرار في الخلفية. وعند حلول الوقت المحدد للإشعار، أو عند تحقق الشرط المبرمج له، تظهر الرسالة في واجهة مستخدم التطبيق.

تُعالج الإشعارات عن بُعد بواسطة خادم بعيد. في هذه الحالة، يجب تسجيل تطبيق العميل على الخادم باستخدام مفتاح فريد (مثل UUID أو رمز جهاز Apple ). ثم يُرسل الخادم الرسالة باستخدام هذا المفتاح الفريد لتوصيلها إلى العميل عبر بروتوكول متفق عليه بين العميل والخادم، مثل HTTP أو XMPP . عند وصول الإشعار إلى العميل، قد يُؤدي ذلك إلى عرض إشعارات أو رسائل قصيرة، أو إضافة شارات إلى أيقونات التطبيق، أو وميض مؤشر LED الخاص بالإشعارات أو إضاءته باستمرار ، أو تشغيل أصوات تنبيه لجذب انتباه المستخدم. [ 28 ] تُستخدم الإشعارات عادةً من قِبل التطبيقات لإطلاع المستخدمين على المعلومات. ويمكن تصنيف محتوى الرسائل وفقًا للفئات التالية على سبيل المثال:

  • رسائل الدردشة من تطبيق مراسلة مثل فيسبوك ماسنجر التي يرسلها مستخدمون آخرون. [ 29 ]
  • العروض الخاصة للبائعين: قد يرغب البائع في الإعلان عن عروضه للعملاء.
  • تذكيرات الأحداث: قد تسمح بعض التطبيقات للمستخدم بإنشاء تذكير أو تنبيه لوقت محدد.
  • تغييرات المواضيع المشترك بها: قد يرغب المستخدمون في الحصول على تحديثات بشأن حالة الطقس في موقعهم، أو مراقبة صفحة ويب لتتبع التغييرات، على سبيل المثال.

قد تُثير الإشعارات الفورية مخاوف تتعلق بالخصوصية، إذ يُمكن استخدامها لربط الهويات الافتراضية لأسماء المستخدمين المستعارة على مواقع التواصل الاجتماعي بالهويات الحقيقية لمالكي الهواتف الذكية. [ 30 ] وقد وُجهت انتقادات لاستخدام الإشعارات غير الضرورية لأغراض ترويجية، باعتبارها مثالاً على سرقة الانتباه . [ 31 ]

انظر أيضاً

مراجع

  1. "تقنية الدفع" . موسوعة التكنولوجيا . 18-11-2012 . تم الاطلاع عليه بتاريخ 23-07-2023 .
  2. م. طومسون، إ. داماجيو، وب. رايمور (22 أكتوبر 2016). "توصيل الأحداث العامة باستخدام تقنية HTTP Push" . مسودة إنترنت . فريق عمل هندسة الإنترنت . تم الاطلاع عليه في 28 أكتوبر 2016 .
  3. "معيار واجهة برمجة تطبيقات الإشعارات" . notifications.spec.whatwg.org . تم الاطلاع عليه في 30 أبريل 2024 .
  4. "واجهة برمجة تطبيقات الدفع" . تم الاطلاع عليه في 30 أبريل 2024 .
  5. "Push API - Web APIs | MDN" . developer.mozilla.org . 2023-02-22 . تم الاطلاع عليه بتاريخ 2023-05-16 .
  6. "آلية دفع HTTP" . مجتمع المطورين . 31 يناير 2026. تم الاطلاع عليه بتاريخ 14 أبريل 2026 .
  7. "أحداث مُرسلة من الخادم" . www.enjoyalgorithms.com . تم الاطلاع عليه بتاريخ 14 أبريل 2026 .
  8. كتاب برمجة CGI على شبكة الإنترنت العالمية من O'Reilly يشرح كيفية استخدام خاصية دفع الخادم في Netscape
  9. مستندات الدفع من الخادم (HTML وXHTML: الدليل الشامل) مؤرشف بتاريخ 17 أبريل 2008 في Wayback Machine، كتاب من O'Reilly يشرح تقنية الدفع من الخادم
  10. إزالة دعم الموارد الرئيسية من نوع multipart/x-mixed-replace
  11. "مواصفات تطبيقات الويب 1.0" .
  12. "بث الأحداث إلى متصفحات الويب" . 2006-09-01 . تم الاطلاع عليه بتاريخ 2007-03-23 .
  13. "أوبرا تتصدر المتصفحات بدعمها لتقنية AJAX: بث أكثر كفاءة" . 1 سبتمبر 2006. مؤرشف من الأصل في 18 مارس 2007. تم الاطلاع عليه في 23 مارس 2007 .
  14. "معيار HTML - الأحداث المرسلة من الخادم" . html.spec.whatwg.org . 31 مارس 2022. تم الاطلاع عليه في 1 أبريل 2022 .
  15. "مقدمة عن بوشليتس" . مؤرشف من الأصل بتاريخ 2009-08-05 . تم الاطلاع عليه بتاريخ 2008-06-05 .
  16. فان دين برويك، جست (1 مارس 2000). "بوشليت: إرسال الأحداث من سيرفلت إلى متصفحات عملاء DHTML" . جافا وورلد . تم الاسترجاع في 13 يوليو 2020 .
  17. "ما هو الاستطلاع المطول وكيف يعمل؟" . PubNub . تم الاسترجاع في 14 أبريل 2026 .
  18. "الاستقصاء المطوّل مقابل WebSockets - كيفية تحقيق الاتصال في الوقت الفعلي، اليوم 55 من تصميم النظام" . مجتمع المطورين . 13 أكتوبر 2025. تاريخ الاسترجاع: 14 أبريل 2026 .
  19. سانت أندريه، بيتر؛ لوريتو، سالفاتوري؛ سالسانو، ستيفانو؛ ويلكينز، جريج (أبريل 2011). "RFC6202 - المشكلات المعروفة وأفضل الممارسات لاستخدام الاستقصاء المطول والتدفق في بروتوكول HTTP ثنائي الاتجاه" . tools.ietf.org . doi : 10.17487/RFC6202 . تاريخ الاسترجاع: 14 مايو 2016 .
  20. "XEP-0124: تدفقات ثنائية الاتجاه عبر بروتوكول HTTP المتزامن (BOSH)" . تم الاطلاع عليه بتاريخ 26-06-2012 .
  21. سي. غو وآخرون (1 نوفمبر 2012). "Datacast: خدمة توصيل بيانات جماعية موثوقة وفعالة وقابلة للتوسع لمراكز البيانات" . أبحاث مايكروسوفت . ACM . تم الاطلاع عليه في 6 يونيو 2017 . 
  22. م. نورمحمدبور وآخرون (10 يوليو 2017). "DCCast: عمليات نقل بيانات فعالة من نقطة إلى نقاط متعددة عبر مراكز البيانات" . USENIX . تم الاطلاع عليه في 6 يونيو 2017 . 
  23. وولليبي، أتيلا. (2020). "قبول المستهلكين لإشعارات التطبيقات: مراجعة منهجية لتأثير التكرار" . المجلة الدولية لتقنيات الهاتف المحمول التفاعلية . 14 (13): 36-47 . doi : 10.3991/ijim.v14i13.14563 .
  24. "الإعلان عن خدمة إشعارات الدفع لأجهزة iPhone للمطورين" . Engadget . تم الاطلاع عليه بتاريخ 18 أكتوبر 2016 .
  25. "الكشف عن خدمة Google Cloud Messaging لنظام Android (GCM) لاستبدال إطار عمل C2DM" . InfoQ . تاريخ الاسترجاع: 18 أكتوبر 2016 .
  26. mijacobs. "نظرة عامة على خدمات إشعارات ويندوز (WNS)" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 20-10-2017 .
  27. "الإشعارات المحلية والبعيدة بالتفصيل" . developer.apple.com . تم الاطلاع عليه بتاريخ 18-10-2016 .
  28. "إشعارات الدفع لنظامي أندرويد وiOS - مدونة - جات آب" . jatapp.com . مؤرشف من الأصل بتاريخ 20 أكتوبر 2017. تم الاطلاع عليه بتاريخ 20 أكتوبر 2017 .
  29. "كيف يمكنني ضبط إشعارات فيسبوك على هاتفي؟ | مركز مساعدة فيسبوك | فيسبوك" . www.facebook.com . تاريخ الوصول: ١٨ أكتوبر ٢٠١٦ .
  30. لوريتي، بييرباولو؛ براشيالي، لورينزو؛ كابوني، ألبرتو (2018). "هجوم الدفع: ربط الهويات الافتراضية والحقيقية باستخدام إشعارات الدفع عبر الهاتف المحمول" . إنترنت المستقبل . 10 (2): 13. doi : 10.3390/fi10020013 .
  31. مكفيدريز، بول (22 مايو 2014). "توقف يا سارق الانتباه!" . مجلة IEEE Spectrum . معهد مهندسي الكهرباء والإلكترونيات . تم الاطلاع عليه بتاريخ 9 أغسطس 2021 .