If you please, do you have an opinion about the software architecture to adapt to my project?
for architecture you should use real time technologies such as: socket io or SignalR for appearing new data in the page.
your project should flow same this:
data pass to Apache Kafka and then your page retrive a new data from Kafka messaging and for mananging your pages of daskboard you can use such as Laravel or .net asp.net mvc. this is depend on what do you know from programming laguages.
if you have any question chat me
Yes, I will use socket io & Laravel, and Apache Kafka per your recommendation (I have looked into it and it's awesome and perfect for my use case, thanks for the recommendation).
I meant by software architecture, whether should I use microservice architecture for my Laravel application or not? normally I don't opt for microservice because of its complexity, cost. But if it's necessary then we have no choice, and to be honest, we don't have the confidence to manage a microservice architecture.
Do I use Apache Kafka just for data coming from IoT devices alongside another DBMS for other storage like (users, factories, ...)? or I will just use Apache Kafka?
I really appreciate your help.
Currently just use Apache Kafaka beecuase it already has a DMBS in it
To connect my Laravel API to Apache Kafka I don't need OAuth2 because I'm not intending to use a third-party app, right?
Note: I'm not using microservice architecture I have Vuejs separated from Laravel so laravel will be used for APIs.
I think if you want to move all accounts in current your reseller to a new one will take more time for that, because you should test all of them one by one . and also you should change DNS for them to a new one. so my opinon move your website one by one and Testing it in a new server and also use cloudflare for managing DNS in it because cloudflare is so faster for changing DNS fron old one to a new one. if you do that your accounts never stop. notes, also you should use same modules and librarys in old server
Mohammed, should you think of move from hoster to hoster as a process which is different than move from one server management software to another? Is there any reason for you to combine these two in one?
I understand that you aim is to increase the performance but the compatibility maintenance for your hosted applications may require more time and resources than could be thought originally.
For example, the time you need to accomplish such a process - moving your domains very carefully , one by one, testing every of them thoroughly, this may require bring them back and forth, paying for both machines... for count of sites, say 300+ it may represent a major headache even to keep records on what was done, when and why, and planning on what should be done, when and why. And your DNS provider can be very fast and separate from your server, meaning additional maintenmance overhead, but the web users' cache updating may require additional time up to the weeks. All of that time you should have at least email being received by your old server. And your email users should read from your both new and old servers.
The best option IMO is to clone your server as a whole server backup/restore propcedure from old provider to the new one, including both users' data and server management software like Plesk or Cpanel. Then after you will get your DNS moved, you can get it done manually without a shadow of a hurry, two weeks should be enough for the purpose, you may compare if the performance is made better, you should have the old benchmarks taken by the tools like Apache Benchmark before you start all of that move, and have the old server abandoned. You may have it at a hot reserve though if some of your projects will require special care.
For the case if you're pretty sure you should switch from the Plesk which made by the guy who interviewed me this March) to CPanel or anything else, I'd suppose you could prefer to have a VPS or a container inside your server and have every new domain hosted there as well as the moved ones, one by one, by your own schedule not by the need to keep 2+ servers paid instead of 1.
for what technologies you should use, this is depend on what technology do you prefer? your should think best structuing for your code because each API vendor has different to a nother one so it's better no merege code vendores together. your code must be using SOLID principle pattern and some design pattern such as Factory Pattern
I prefer to use Node.js because you have experainse in it and also you can do anything for this language.
my advice , you should answer me for this question, what do you like to work: web base or mobile native or cross platform. if you like web base you should choose PHP or ASP.net or Node.js or if you like mobile native you should decide Android or IOS platform and else if you like cross platfrom you should learn Flutter with dart language. thanks
I don't recommended to use WebRTC for group meeting because when you have a lot of participants of a meeting so in this case, it will happen hung in the connection because the stream pass over http, also webRTC support maximum 256 participants of a group meeting. webRTC is good for calling peer to peer. you can use zoom program and then integrate it with your project via api or embedded system
I prefer to use Magneto because it open source and has a lot of extensions in it so it's so faster for building a website