Планирам да интегрирам известия в реално време в уеб приложение, върху което работя в момента. Реших да използвам XMPP за този и избрах openfire сървър, който смятах за подходящ за моите нужди.
Предният край използва strophe библиотека, за да извлича известията с помощта на BOSH от моя openfire сървър. Известията обаче са известията и други съобщения трябва да бъдат публикувани от моето приложение и следователно мисля, че този код трябва да се намира в задната част. Първоначално мислех да използвам PHP XMPP библиотеки като XMPHP и JAXL, но след това смятам, че това би причинило много излишни разходи, тъй като всеки скрипт ще трябва да изпълнява едни и същи стъпки като свързване, удостоверяване и т.н. и мисля, че това ще направи PHP края малко бавен и не реагира.
Сега мисля да създам приложение за междинен софтуер, действащо като уеб услуга, която PHP ще извика и това приложение ще обработва нещата с услугата XMPP. Ползата от това е, че това приложение (сървър, ако искате) ще трябва да се свърже само веднъж и то ще стои там и ще слуша на порт. също така планирам да го създам по асинхронен начин, така че първо да вземе всички заявки от моето PHp приложение и след това, когато няма повече заявки; отидете да правите неща за публикуване на известия. Планирам да създам тази услуга в Python с помощта на SleekXMPP.
Точно това планирах. Аз съм нов в XMPP и цялата тази работа с уеб услугата и бих искал да взема вашите коментари по това относно проблеми като използване на памет и процесор, предимства, недостатъци, проблеми с мащабируемостта, сигурност и т.н.
Благодаря предварително.
PS:-- също, ако нещо подобно вече съществува (въпреки че не намерих след много гугъл) Моля, насочете ме там.
РЕДАКТИРАНЕ --- Услугата от средно ниво трябва да прави следното (но не само): 1. Публикуване на известия за различни нива на групи и страници на общността. 2. Известие за единичен потребител за някакво събитие. 3. Регистрация на потребител (все пак може да се направи с помощта на плъгин за потребителски услуги).
РЕДАКТИРАНЕ --- Също така би трябвало да иска да създава pub-sub възли и да абонира и отписва потребители от тези pub-sub възли.
Също така искам да съхранявам известията и съобщенията в база данни (openfire не го прави). Ще бъде ли това добър избор?