Recently, the company has been upgrading its ERP products.
The choice of architecture is very tangled. The original system is in the CS architecture and is in the fat client mode. Install the client when installing the clientProgramAnd. NET Framework, and install diapi, database access components, and even excel components. In order to install the software, a special folder named "taixin software installation prerequisites" is created.
Although the client software is automatically upgraded during project implementation, the Client Version and server version are automatically checked and updated before each startup, however, the initial installation still brings a lot of trouble to users.
Therefore, in our 2.0 version, we considered using UDP communication. On the client, we only need to install. NET Framework and client applications, or even install only one smartclient. Of course, this client supports automatic upgrade. The client is only responsible for collecting commands, such as logon. When you click the "Logon" button, the client sends a command, loginrequest, and the user name and password, parameters are transmitted to the UDP receiver on the server. Of course, the IP address and port of the client are automatically transmitted to the server. After receiving the message, the server analyzes the message type based on the message content, obtain the user's request for logon, respond, find and verify the user, and then generate an encrypted authentication string based on the user name and Client IP address, and return it to the client. After receiving the authentication string, the client successfully logs on! Other operations are similar. In this way, the client can only run a simple command collection and "thin client" displayed on the interface. This reduces the complexity of Client installation and deployment and improves client compatibility.
However, after discussion with some technical experts, I was unanimously denied by them and asked me to write the BS architecture or WebService communication. I personally prefer zookeeper. I. CS clients are more controllable and more suitable for user operations of ERP software. II. UDP (or TCP) is used to create the protocol, it is more proactive than WebService. For example, the server can "push" announcement messages to the customer terminal.
After some discussion, I almost cannot determine the architecture to adopt. Please give me more guidance.