Before asking questions regarding this exercise, please review the lecture notes of Week #01 and #02 as well as the documentation on the Erlang web pages.
In Erlang, implement a server process that manages a simple address database. This server should be able to handle four types of requests:
insert
requests: Such a request adds a new address to the
database (any existing address under the same name may be silently
overwritten).delete
requests: Given a name, any address stored under that
name is to be removed from the database.lookup
requests: Given a name, retrieve and return to the
client the address stored under that name (if available).stop
requests: Terminate the server.
In addition, implement a client function that adds addresses to the database, retrieves addresses, and deletes them. One way of doing this would be to write an interactive front-end that communicates with the server.
In a second
step, provide RPC stubs to communicate with the address server and rewrite
your client to use these stubs. Finally, using Erlang's after
clause add support for dealing with timeouts during communication with the
server. How does this affect the RPC interface?
This page is maintained by cs9243@cse.unsw.edu.au Last modified: Monday, 07-Sep-2020 22:07:44 AEST