K
K
Kirill H2017-08-05 12:55:35
Database
Kirill H, 2017-08-05 12:55:35

Server with DB on QT?

Summary
Начал знакомится с таким IDE как Qt, много чего интересного тут мне приглянулось, вот уже работаю больше месяца. Слышал такое выражение, что каждый уважающий себя программист должен хоть раз в жизни написать свой текстовый чат. Разобрался и накалякал на коленке на основе QTcp простенькую библиотечку чтобы передавать файлы и просто текстовые строки через Tcp сокет. Всё что необходимо, это знать IP получателя. Решил апнуть чатики, дописав туда сервер, что будет держать в себе список соответствия ников и ip с которого последний раз заходил конкретный пользователь пользователь. Ну и перед тем как приступить к разработке SRS и архитектуре, решил иследовать вопрос на чем как лучше организовать сервер, раньше с сетью не работал.

Tags that interest me:
  1. How to organize a connection with the server (I know, maybe this is a perversion, but I also want to make the server on Qt) , it is possible to switch from tcp to some other technology, because for now, to connect the server with each user, you will have to allocate resources to a separate socket instance , and this is something somehow not camelfo.
  2. How to process the database, use a third-party database management system, like MySQL or some kind of hybrid connection with Qt, or use standard Qt tools ( though I understand that they have only an indirect connection with normal DBMS) .
Important
This is just a home-made project, there is nothing special here, and moreover, this miracle will appear on GitHub at most, I just continue to get acquainted with an interesting IDE and play with an interesting topic in the evenings.

Thanks for your tips! I'm interested in the opinion of people who are already familiar with Qt and who can enlighten me in this dark forest of networks :)

Answer the question

In order to leave comments, you need to log in

2 answer(s)
I
Ighor July, 2017-08-05
@KirillHelm

1. TCP is not particularly bad. I doubt that you will have more than 1000 simultaneous sockets.
2. You can use a SQLite file and run client commands directly through it, or you can organize a semblance of a database on QHash, and accept requests on Qt Script. The first option is easier.

A
Armenian Radio, 2017-08-05
@gbg

Qt has a huge number of regular tools for working with all popular DBMS. And even Firebird is.
QSqlDatabase

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question