Remote Procedure Call (RPC) – Part 3: Akses Resource RPC Server

Pada artikel sebelumnya, sudah dibahas terkait dasar RPC dan pengiriman data melalui parameter RPC, pada artikel ini akan dibahas terkait cara mengakses resource RPC pada server. Adapun contoh kasus yang diangkat yaitu akses resource file pada server RPC.

1. Buat file access-resource-server.py dan berikan kode berikut:

from xmlrpc.server import SimpleXMLRPCServer
import os

# use port 8080, if confilct use another port, like 8000
server = SimpleXMLRPCServer(("localhost", 8000))

def openfile(filen):
	f = open(filen, 'r')
	file_contents = f.read()
	f.close()
	return file_contents

print("Server is listening on port 8000...")
server.register_function(openfile)
server.serve_forever()

2. Buat file resource.txt, isi dengan data text (bebas) contoh:

3. Buat file access-resource-client.py dan berikan kode berikut:

import xmlrpc.client

# use port 8080, if confilct use another port, like 8000
proxy = xmlrpc.client.ServerProxy("http://localhost:8000/")

isifile = proxy.openfile('resource.txt')
print("Isi data dari file:")
print(isifile)

4. Masukkan access-resource-server.py dan resource.txt ke VM-1

5. Masukkan access-resource-client.py ke VM-2

6. Sesuaikan IP pada kode access-resource-server.py pada VM-1

7. Sesuaikan IP pada kode access-resource-client.py pada VM-2

8. Eksekusi access-resource-server.py pada VM-1

9. Eksekusi access-resource-client.py pada VM-2

Dari gambar diatas terlihat bahwa, VM2 dapat mengakses resource file yang ada pada VM1 melalui RPC.