In the peer-to-peer system project, we designed and implemented a robust distributed system by integrating three key technologies: TCP/IP sockets, SOAP+HTTP, and RPC. The project consisted of three main parts: firstly, the development of a TCP/IP socket-based communication system to enable connectivity between system nodes; secondly, the addition of SOAP+HTTP services to enhance functionality, such as providing current date and time information via a web service; and finally, the integration of RPC to handle remote procedure calls and facilitate the printing of user operations on the server side. By combining these technologies, we successfully created a scalable and efficient peer-to-peer system, showcasing my expertise in distributed systems and proficiency in implementing diverse communication protocols.
-
TCP/IP Sockets Communication: Implemented robust communication channels using TCP/IP sockets to facilitate data exchange between nodes in the peer-to-peer network, ensuring reliable and efficient transmission of information.
-
SOAP+HTTP Services: Developed SOAP-based web services over HTTP protocol to extend the system's functionality, including features such as retrieving the current date and time information, enhancing the system's utility and versatility.
-
RPC Integration: Integrated Remote Procedure Call (RPC) technology to enable seamless communication between distributed components, allowing for efficient execution of remote procedures and method invocations across the network.
-
Service-Oriented Architecture (SOA): Adopted a service-oriented architecture approach to design and implement modular and loosely coupled components, promoting scalability, maintainability, and reusability of system functionalities.
-
User Operation Logging: Implemented a logging mechanism to record user operations performed within the system, providing insight into user activities and facilitating system monitoring and analysis.
-
Scalability and Reliability: Designed the system with scalability and reliability in mind, allowing it to accommodate a growing number of nodes and users while ensuring consistent performance and fault tolerance.
-
Comprehensive Documentation: Provided detailed documentation, including README files and user manuals, to guide users through the installation, configuration, and usage of the peer-to-peer system, ensuring ease of adoption and troubleshooting.
-
Adherence to Best Practices: Followed industry best practices and standards in software development, including code commenting and error handling to ensure the quality, stability, and maintainability of the system codebase.
-
Cross-Platform Compatibility: Ensured cross-platform compatibility by developing the system using platform-independent programming languages and technologies, allowing it to run seamlessly on various operating systems and environments.
-
Collaborative Development: Engaged in collaborative development practices, working effectively within a team to plan, coordinate, and execute the project tasks, leveraging collective expertise and fostering a culture of knowledge sharing and innovation.
-
Carmen Abans Maciel: https://github.com/carmenabans
-
Noelia Hernández Rodríguez: https://github.com/Noeliahr10