diff --git a/src/snek/view/rpc.py b/src/snek/view/rpc.py
index 27a8dcf..5720f04 100644
--- a/src/snek/view/rpc.py
+++ b/src/snek/view/rpc.py
@@ -203,7 +203,9 @@ class RPCView(BaseView):
             if msg.type == web.WSMsgType.TEXT:
                 try:
                     async with Profiler():
+                        self.app.db.begin()
                         await rpc(msg.json())
+                        self.app.db.commit()
                 except Exception as ex:
                     print(ex, flush=True)
                     await self.services.socket.delete(ws)