Project translated automatically.
Log in
or
register,
to view the original
1 .Ubuntu Server Optimization: Install the latest stable version of Ubuntu Server.Choosing a minimum installation to reduce background processes.Settings of network parameters to increase the size of network buffers.Disable energy saving functions in BIOS/UEFI for constant high frequency processor.Set the system to use hugepages to optimize memory use.Install and set up monitoring tools (htop, iotop, nload).2ndParser development for C++: Language and version: Use C++17 or C++20.Parking libraries: cpp-httplib for HTTP requests.Gumbo or htmlcxx to understand HTML.Libraries for networking: ASIO (without Boost) for asynchronous input-output and work with UDP.Library of logging: spdlog.Multi-precision and asynchronousness: Use multi-precision or asynchronous programming to effectively process requests and send data.ASIO can be used for this purpose.Database: A built-in light database (e.g. SQLite) to store news with the automatic assignment of a unique ID.Error Processing: Implement the error processing system using the C++ exclusions or the error code return system.Possibility of recovery after errors, especially in case of network failures or parsing errors.Profile: Using gprof or perf to define “high places” in the code and subsequent optimization.Documentation: Detailed documentation of the code, including user guidelines and comments on key parts of the code.Testing: Execution of unit tests to verify parser and network operations.ThreeFunctional requirements: Parser must extract up-to-date data from the said website.Automatic transfer of data through the UDP protocol to the specified IP address in the format.Automatic assignment of the ID of each news when added to the database.The ability to scale and add new sources for parsing without significant code processing.
Good day, ready to discuss the details of the implementation. Experience in C++ for over 10 years. Interested by the host - have you chosen something or will you need to look for yourself?
Proposals are currently absent
Freelancers are reviewing the task — proposals will appear here soon.
Proposals concealed
The list does not show proposals concealed by the client or freelancer with a Plus profile, as well as proposals violating rules