{"id":1605,"date":"2013-10-31T17:36:09","date_gmt":"2013-11-01T00:36:09","guid":{"rendered":"http:\/\/xiehang.com\/blog\/?p=1605"},"modified":"2014-01-28T11:03:37","modified_gmt":"2014-01-28T18:03:37","slug":"slowly-making-progress-on-xmpp","status":"publish","type":"post","link":"https:\/\/xiehang.com\/blog\/2013\/10\/31\/slowly-making-progress-on-xmpp\/","title":{"rendered":"Slowly making progress on XMPP"},"content":{"rendered":"

Alright, a quick summary on XMPP before Halloween \ud83d\ude09<\/p>\n

ejabberd is up and running with 3 nodes in the cluster, and having data replicated to all 3 nodes thus service will be up and running as long as there is at least one node alive. With SleekXMPP created 5M which is much faster then ejabberdctl, created 10,000 pubsub nodes so that I can do announcement to user groups, but seems I need to recreate them as they are currently all belong to admin account, which does not fit into real world. pubsub is working as well, but I need to find another solution with better performance – it’s current about 1 subscribe\/second, and seems most time was spent on authentication, so I need a feature of “subscribe for others” to speed up the test deployment, though this is not necessary in real production. I haven’t test publishing information yet.<\/p>\n

Next step I need to do information publishing, for online and offline users, plus test how many messages I can queue, and who can do the announcement. Also, or more important, I need to test mnesia fragment which will make the cluster truly expandable. I think I’m going to create some “core” nodes to store fragmented data, and some other non-core nodes to handle connections. Once this is tested I believe everything is good for production.<\/p>\n

I won’t do anything regarding websockets as target client will be an App, also standard for XMPP over websocket is still quite unstable thus it could waste more if I work on it more.<\/p>\n

Pretty much everything’s here …<\/p>\n","protected":false},"excerpt":{"rendered":"

Alright, a quick summary on XMPP before Halloween \ud83d\ude09 ejabberd is up and running with 3 nodes in the cluster, and having data replicated to all 3 nodes thus service will be up and running as long as there is at least one node alive. With SleekXMPP created 5M which is much faster then ejabberdctl, […]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[460,459,462,464,463,123],"_links":{"self":[{"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/posts\/1605"}],"collection":[{"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/comments?post=1605"}],"version-history":[{"count":2,"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/posts\/1605\/revisions"}],"predecessor-version":[{"id":1642,"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/posts\/1605\/revisions\/1642"}],"wp:attachment":[{"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/media?parent=1605"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/categories?post=1605"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xiehang.com\/blog\/wp-json\/wp\/v2\/tags?post=1605"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}