<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://comet-server.com/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://comet-server.com/wiki/feed.php">
        <title>CppComet en:comet</title>
        <description></description>
        <link>http://comet-server.com/wiki/</link>
        <image rdf:resource="http://comet-server.com/wiki/lib/tpl/writr/images/favicon.ico" />
       <dc:date>2026-05-12T03:05:50+03:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:authentication?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:building-from-source?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:cluster?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:cometql-bash-example?rev=1576623912&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:cometql?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:dev_id?rev=1576623912&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:ini-file?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:introduction-to-comet?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:javascript_api?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:load-testing-result?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:load-testing?rev=1576623911&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:saas?rev=1576623912&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:simple-php-chat-example?rev=1576623912&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:star-comet-chat?rev=1576623912&amp;do=diff"/>
                <rdf:li rdf:resource="http://comet-server.com/wiki/doku.php/en:comet:testhosting?rev=1576623911&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://comet-server.com/wiki/lib/tpl/writr/images/favicon.ico">
        <title>CppComet</title>
        <link>http://comet-server.com/wiki/</link>
        <url>http://comet-server.com/wiki/lib/tpl/writr/images/favicon.ico</url>
    </image>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:authentication?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>Users’ authorization on the comet-server</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:authentication?rev=1576623911&amp;do=diff</link>
        <description>Users’ authorization on the comet-server

Besides of channels where each user, who know a name of channel, can subscribe it, here is an opportunity to authorize users on the comet-server and to send private messages to users by their IDs.  User authorization involved several steps. The first step – it is sending user’s ID and a random hash in your system to the comet-server.</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:building-from-source?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>Install</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:building-from-source?rev=1576623911&amp;do=diff</link>
        <description>Install

Recommended OS ubuntu, debian, centos


apt-get update
apt-get install cmake make cpp gcc libssl-dev g++ nginx libmysqlclient-dev mysql-server mysql-client flex mailutils uuid-dev 


Building it from source code


git clone https://github.com/Levhav/comet-server
cd comet-server
cmake .
make
make install</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:cluster?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>Clusterization CppComet</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:cluster?rev=1576623911&amp;do=diff</link>
        <description>Clusterization CppComet

In comet server there is possibility of clusterization in that every server of cluster can accept queries and send to their those servers of cluster that it is necessary to advise about an event. (It is possible to conduct an analogy with master-master replication at databases)</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:cometql-bash-example?rev=1576623912&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:12+03:00</dc:date>
        <title>An example of sending a message from a bash script</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:cometql-bash-example?rev=1576623912&amp;do=diff</link>
        <description>An example of sending a message from a bash script

An example of a console command that sends a message containing a load of data to the server.


echo &quot;INSERT INTO pipes_messages (name, event, message)VALUES('web_MainPageChat', '', '{\&quot;text\&quot;:\&quot;`cat /proc/loadavg`\&quot;,\&quot;name\&quot;:\&quot;AVG `uname -n`\&quot;}' );&quot; | mysql -h app.comet-server.ru -u15 -plPXBFPqNg3f661JcegBY0N0dPXqUBdHXqj2cHf04PZgLHxT6z55e20ozojvMRvB8 -DCometQL_v1</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:cometql?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>CometQL</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:cometql?rev=1576623911&amp;do=diff</link>
        <description>CometQL

CometQL - it’s an API for work with comet server through MySQL protocol.

Advantages of CometQL:

	*   Unified API for more than 12 programming languages.
	*   Simple and intelligible query view.
	*   PHP includes resources for maintaining persistent connections with MySQL and now you can use it for co-working with comet server.</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:dev_id?rev=1576623912&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:12+03:00</dc:date>
        <title>Public identifier Developer</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:dev_id?rev=1576623912&amp;do=diff</link>
        <description>Public identifier Developer

In the examples are usually referred as dev_id. Used only when connecting to SaaS version of CppComet.

	*  When you connect to the open source version from the JavaScript API may not be specified or be set to 0. Read more here
	*  When connecting to the open source version from</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:ini-file?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>Configuring the comet.ini file</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:ini-file?rev=1576623911&amp;do=diff</link>
        <description>Configuring the comet.ini file

 * Parameters can be specified in any order.
 * Register is important
 * The comment begins with the `;`

Section [main]

Password for access from cometQL, this parameter is synonym for dev_key from saas version.

password = 0000000000000000000000000000000000000000000000000000000000000000</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:introduction-to-comet?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>Introduction</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:introduction-to-comet?rev=1576623911&amp;do=diff</link>
        <description>Introduction

Comet technology — allows sending arbitrary messages to client through server initiative — it’s a push notifications. You can use push technology to delivering messages. For the correct work of push notification always use a push service. You can perform these tasks because of permanent connection between browser and Comet server.  Here used websocket technology. For those browsers whose don’t support websocket technology always used long polling AJAX query mechanism.</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:javascript_api?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>JavaScript API</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:javascript_api?rev=1576623911&amp;do=diff</link>
        <description>JavaScript API

	*  Download CometServerApi.js
	*  GitHab repository with CometServerApi.js

Connection with server

The function start accepts connection settings and opens new connection. Here opt – it’s an object with connecting options.

cometApi.start({dev_id:15, user_id:1, user_key:&quot;userHash&quot;, node:&quot;app.comet-server.ru&quot;})</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:load-testing-result?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>Report about testing of 64,000 connections online</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:load-testing-result?rev=1576623911&amp;do=diff</link>
        <description>Report about testing of 64,000 connections online

At previous article we examined the  how to conduct the stress testing. And here I want to show you how I conducted it by myself, and give its results.

Results

On the screenshot you can see 3 consoles.  
[Пик тестирования]

	*  At the top was running the tsung</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:load-testing?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>Stress testing</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:load-testing?rev=1576623911&amp;do=diff</link>
        <description>Stress testing

The program called “tsung” can be used for stress testing.

Tsung installation


apt install tsung


Test scenario

The tsung program needs to transfer a file with description of the test script. Here is an example of a simple test scenario:</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:saas?rev=1576623912&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:12+03:00</dc:date>
        <title>Versions of CppComet</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:saas?rev=1576623912&amp;do=diff</link>
        <description>Versions of CppComet

There are two versions of CppComet pensors version and SaaS platform.
They are fully compatible with Api, and the only difference is when specifying the parameters for the connection.

Connecting from the JavaScript API

When connecting from the JavaScript</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:simple-php-chat-example?rev=1576623912&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:12+03:00</dc:date>
        <title>PHP chat example</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:simple-php-chat-example?rev=1576623912&amp;do=diff</link>
        <description>PHP chat example

An example of using the CppComet server to create a chat.   

	*  jsfiddle.net online demo
	*  Github repo

[chat demo]

Scheme of chat

Typical scheme of chat:

[Typical scheme of chat]

	*  Connecting to the comet server by websockets
	*  Send ajax message for add new massage to chat
	*  Send message to CppComet</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:star-comet-chat?rev=1576623912&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:12+03:00</dc:date>
        <title>Integrated chat plugin</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:star-comet-chat?rev=1576623912&amp;do=diff</link>
        <description>Integrated chat plugin

It’s ready-made plugin chat which could embed on your site for private correspondence between users.

Source codes you can find on GitHub, Demo version

Chat functionality

	*  Possibility to transmit text messages with any attachments;
	*  Searching contacts in contacts list;</description>
    </item>
    <item rdf:about="http://comet-server.com/wiki/doku.php/en:comet:testhosting?rev=1576623911&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-18T02:05:11+03:00</dc:date>
        <title>Checking the hosting for possible connect to the comet server</title>
        <link>http://comet-server.com/wiki/doku.php/en:comet:testhosting?rev=1576623911&amp;do=diff</link>
        <description>Checking the hosting for possible connect to the comet server

Some hosting providers have a ban on external connections, this is often found on free or very cheap hosting. Many hosters warn about restrictions at once but not everywhere.

To work with the CppComet service, your hoster needs support for working with sockets and there is no ban on external connections. These features are found in most paid hosting providers.</description>
    </item>
</rdf:RDF>
