#1 Re: mORMot 1 » WinHTTP, http.sys and WebSockets » 2016-05-30 07:37:09

Thank you mpv fro the Information and your efforts !

Is your Websocket server implementation able to stay connected with ?? 5000 Clients ?
Like original sample 31.
This means a Client connects to the Server and stays connected. The Server sends broadcasts to all conencted Clients.

Thanks

cybertrace

#2 Re: mORMot 1 » WinHTTP, http.sys and WebSockets » 2016-05-24 11:02:52

Hello mpv !

When and where is your code (sample31) available.
I have similar Needs of Connections

Thanks

cybertrace

#3 Re: mORMot 1 » TSQLHttpServer » 2016-05-05 08:15:38

Hello Guys !

In sample 31 how it is possible on the serverside to get an Information from what Client pseudo the message and the connectionrequest  is coming to donot send it back this message in the  Notifyevent to this Client

procedure TClientService.NewOrdersSend(const pseudo : string; var Orders : TOrderBuffer);
var i: integer;
    formattedDateTime : string;
    sMsg : string;
begin
  DateTimeToString(formattedDateTime, 'dd/mm/yyyy hh:nn:ss.zzz', Now);
//  frmServer.QueueLogMsg('Time : ' + formattedDateTime + '  came from : ' + pseudo + ' message : ' + msg);
  for ix := high(fConnected) downto 0 do // downwards for InterfaceArrayDelete()
    try
       if pseudo <> 'Master' then     //   pseudo HERE SHOULD BE THE INFORMATION FROM THE STRUCTURE OF ONE CLIENT
         fConnected[ix].NotifyOrderMsg(pseudo,Orders);
    except
      InterfaceArrayDelete(fConnected,i); // unsubscribe the callback on failure
    end;
end;

I Need here also an Information what client establishes a callback with an structure while logging on on the Server and store this information into a struct. Alos a logoncheck autentication should be made and reject in case of no license the connection

TAccountInfo  = record
         sCompanyName     :  string;
         sAccountName       :  string;
         sNameServer         :  string;
         Accountnumber     :  longint;
end;

I am not familiar with the knowledge of Interfaces and I Need your help, maybe someone can provide me with a sample like sample 31

thanks in advance

#4 Re: mORMot 1 » TSQLHttpServer » 2016-04-27 10:56:18

Hello AB !

With Skype it is no Problem to get connetion .

I teste once the sample 31 but in out Company it did'nt work

I only have the Information

gate:8080 then user and Password

Maybe the Gateway doesn't like Websockets ??

What is an alternativ to Websockets to handle a sample like sample 31 with Client callbacks

Thanks

#5 Re: mORMot 1 » Error sendind TStringList from Client to Server » 2016-04-27 10:00:59

Hello TPlachta !

Can you provide me with the sample of your TStringlist both on Server and clientside

Thanks

Cybertrace

#6 Re: mORMot 1 » TSQLHttpServer » 2016-04-27 09:54:24

Hello Guys !

How is the best way to come over a Proxyserver with a

TSQLHttpServer as a Server and a
TSQLHttpClientWebsockets  to the Server as a client

Both or one of them could be behind a Proxyserver

I use port 8888 as in sample 31

Also a callback as in sample 31 should work

Thanks in advance

cybertrace

#7 Re: mORMot 1 » TSQLHttpServer » 2016-04-08 09:14:29

Thanks emk for your Information

I checked out the RabbitMQ and there is an existing Delphi Software available named kbmMW (Kim Bo Maddsen) which has also in the professional Version an AMQP protocol, look at

http://www.blaisepascal.eu/blaisepascal … ge0020.pdf


This Autor also wrote the kbmMemtable, a very good and fast database in Memory. I used this since 2000.

#8 Re: mORMot 1 » TSQLHttpServer » 2016-04-04 15:28:39

Hello AB !

I need a Server what can send to the connected Clients and also the Clients can send to the Server some Information, max 4000 Bytes 1 frame. Low communication traffic. Only whe the Server sends to the Clients over their registerd callbacks maybe there is the load higher.

usage :
1. The Client connects to the Server and Registers a callback like sample 31
2. The Server sends some Information to all connected Clients as a callback, max. Clients should not be limited, up to 2000 and more (as you wrote win 32 is limited)
3. also the Client sends some Information to the Server.

I tried sample 31  and it works fine, but your answer was the resources and the limitied Count of threads, because each Client has it own thread on the Server

I tried also sample 14, but only the Client ask for the interfaced Service and then disconnects, so the Server has no Information where the Client is.

MY question

What is the easiest and best way to archieve 1..3.
What serversocket should I use and what clientsocket.

Best regards

cybertrace

#9 Re: mORMot 1 » TSQLHttpServer » 2016-03-31 13:27:31

Thanks AB !

How is the best implementation for a purpose of a Server with many Clients ?

I'll tried Project 31 and it works nice.

Do you have a snapshot of code to use regarding the right implemetation  on Server and Client, the Client Registers a callback on the Server and then mostly receives some data

http.sys is available from Win 8 up ??

Thanks for your Help

#10 mORMot 1 » TSQLHttpServer » 2016-03-31 09:11:44

cybertrace
Replies: 15

Hello Guys !
How many Clients can a TSQLHttpServer handle ?
I refer to sample Project31 ?

Thanks

#11 Re: mORMot 1 » SOA/ORM modell up to 10000 clients » 2016-03-18 17:16:03

Hello AB !

A few days ago I sent you a mail with also an overview of my needs. There inside was the Information about 2000 Clients.

The Clients maybe grow to this size and then they sure have to be connected to more then one Server.

The first Goal would be to have 50 or 100 Clients, they are connected to one Server application always 5 days a week from Sunday 23:00 to Friday 23:00.
This server application sends sometimes some Information to the clients, and they also send some Information to the Server and this goes into a database MYsql or perhaps Oracle. The max. bytecount from a Client in one telegram is 4000, nothing more and not time critical. This is an Information if the client has executed the orders from the Server. (Mastertrader)

The Server app receives from another application (Mastertrader) the Information and sends it as a broadcast to all connected Clients. This should have less delay, because this is trading Information to the Forex Brokers and decisions for buy or sell Currencies.

My skills are more to write Windows applications as stand alone applications. I did something with MS SQL and datasnap but I think with this I will not succeed here.
I have the impression, you have a great expierience with this mormot System and also with SOA/ORM  because you are one of the designers. It would be great when you could help me with the first  design and basecode. When I (We) are  using mormot for our purposes and it works well, we are also willing to donate for your Forum for sure. I think this is great stuff what you have developed here and also it works well for us, when the base is well designed.

The needs are similar to the sample 31, but the traffic from one Client must not go to other Clients

Looking Forward to here from you. I send you my contact from Skype to yout mail maybe we can clarify something over this medium

Thanks for your reply

Cybertrace

#12 mORMot 1 » SOA/ORM modell up to 10000 clients » 2016-03-18 09:56:15

cybertrace
Replies: 2

Hello dear members !

I am new with mormot and SOA/ORM I need some Basics to start. I used before Datasnap with Delphi XE6,but this doesn't fullfill my expectation.

I have a Project  with a Server app and up to 10000 Clients, where the Clients mostly getting a small amount of data ( approx. 2000 Byte) from the Server over a broadcast. Sometimes from some Clients is coming Information to store in a database conencted to the Server app, this database is MYsql or a Oracle Server.

The Connection to the Server goes over the Internet.

I tested sample 31 (Chat sample) and this fits to my requirements, I tested this local and over the Internet with a few Clients and it works fine.

The hardware will be  Server Station HP or Dell or a powerful machine with 8 core CPU and enough RAM.

From the Client I will use probably the Ichatmodell in this sample with a

So  my questions :

1. I use the Server implementation from th sample, but for 10000 Clients how many Servers TSQLRestServerFullMemory are neccessary and how many TSQLHttpServer and Ports are neccessary to handle
    this amount of clients

//Sample 31 Server side
  Server := TSQLRestServerFullMemory.CreateWithOwnModel([]);
  try
    Server.CreateMissingTables;
    Server.ServiceDefine(TChatService,[IChatService],sicShared).
      SetOptions([],[optExecLockedPerInterface]). // thread-safe fConnected[]
      ByPassAuthentication := true;

    success :=  Server.Services.Resolve(IChatService, Service);
    HttpServer := TSQLHttpServer.Create('8888',[Server],'+',useBidirSocket);
    try
      protocol := TWebSocketProtocolEcho.Create('meow','');
      protocol.OnIncomingFrame := protocol.EchoFrame;
      HttpServer.WebSocketsEnable(Server,Mt4Trader_TRANSMISSION_KEY).
        Settings.SetFullLog; // full verbose logs for this demo
      HttpServer.WebSocketsEnable(Server,Mt4Trader_TRANSMISSION_KEY).Settings.OnClientConnected := ClientIsConnected;
      HttpServer.WebSocketsEnable(Server,Mt4Trader_TRANSMISSION_KEY).Settings.OnClientDisconnected := ClientIsDisonnected;
       HttpServer.HttpServer.OnHttpThreadStart := HttpServerStarted;

So please, I need your knowledge and you expierience to start the Server app in the right way and maybe you can provide me with a good sample or a Piece of code  for the Server and the a Client or give me Information to expand the sample 31 to archieve a good functionallity.

Thanks in advance a lot

Cybertrace

#13 Re: mORMot 1 » My mORMot Videos » 2016-03-04 09:54:38

Hello Guys !

I am a new starter with mormot and I would like to have the sourcecode from warleyalex from DO Macarena.

Do anyone from you have this.

It would be nice to forward it to me.

please send it to

cybertrace@liwest.at

Thanks in advance

cybertrace

#14 Re: mORMot 1 » SOA/ORM project with mormot » 2016-02-29 13:39:47

Hello AB !

A wizard would be great to start easely.
Delphi XE.. has this wizard to start with datasnap.


What do you mean about the performance of my Project, can mormot handle the communication ?

Best reagrds

cybertrace

#15 mORMot 1 » SOA/ORM project with mormot » 2016-02-29 11:42:55

cybertrace
Replies: 3

Hello Community !

I am a new user of this forum and I have a very sofisticated application to make. I am new in this ORM/SOA and first I tried to to something with datasnap. This was not satisfying for a big amount of clients  Through my investigations in the net I found a report from Roberto Schneiders (Part 1 https://robertocschneiders.wordpress.co … ity-tests/ and part  2 https://robertocschneiders.wordpress.co … s-part-2/) which confirmed the problems from datasnap and so I found in this report also mOrMot as a base to work with. I have only very less knowledge from mOrMot - I tested some of the samples, but requirements for my plans to do the application are not sufficient to build a proper system.
Espacially the sample 31 (Chat Server - Client) would be good for starting with the callbacks to the Clients. But I do not need when a Client sends to the Server all others are receiving the same. I have changed the code so I am only sending from the Server to all clients. I've tried this and it works, but I noticed when I send a message to the Clients there is a greater delay when I send until it arrives on the Clients. Because I do not know the architecture of mORmot it is difficult to find this out.

My Project Usage :

I have a central with a database Server and some local Clients. They are using a MySQL Server database on a Server machine. Now I will change the architecture  and  put a ORM/SOA application between the database Server and the Clients local. Also now we will support Clients in the Internet (PCs) and they are then also connected to this ORM/SOA application from outside. The count of clients is variable and can be up to 2000 clients.

1.
All Clients should have a registered callback (or other function) what enables the ORM/SOA application to send them orders with a very less timedelay over the Internet, the internetconnection from the Client should also work over Firewalls and Gateways in some companies
I have tried sample 31 and this works in Basic, but if this works successfully with my requriements I do not know and I am also not able to verify this.

2.
All Clients are sending Information over the orders after they executed and finished them -> not time critical

3.
All Clients are receiving Parameters from the Server -> less timecritical, not all Clients together are receiving, mostly selected Clients are updated,but also it could be that all are updated.

4.
The amount of data sended and received is about 1 kB max. for one Client.

5.
In the Client a Interprocess communication happens to place the orders (Tradingsystem MT4 Tradingterminal). The Clients sends and receives Information and Forward this to the Server over the Internet or a local Connection.

6.
The Internet Connection to the Server should be easy to establish, it should also work over Gateways.

CONCLUSION :

Dear members, is anyone of you guys so kind to make me a short example to start for Server and Client what fits in my requirements and assist me later sometimes with the implementation.

I need a good and stable structure to start with this project.

My question also :  where can I post a pdf with my structure and som sourcecode ?



Thanks in advance to the community !!

Cybertrace

my email :  cybertrace@liwest.at

Board footer

Powered by FluxBB