Well, I use nothing else. since years. And with RelStorage 3 I have no idea why one ever want to use ZEO (or worse, ZRS), but that's my experience and opinion.
Okay... I was able to get this working with Google Cloud Run and a free database from ElephantSQL. I expect it to work the same with CloudSQL.
I've updated the info at https://github.com/collective/plone-on-cloudrun
Traceback (innermost last):
Module ZPublisher.WSGIPublisher, line 168, in transaction_pubevents
Module transaction._manager, line 257, in commit
Module transaction._manager, line 135, in commit
Module transaction._transaction, line 282, in commit
Module transaction._compat, line 45, in reraise
Module transaction._transaction, line 273, in commit
Module transaction._transaction, line 465, in _commitResources
Module transaction._compat, line 45, in reraise
Module transaction._transaction, line 439, in _commitResources
Module ZODB.Connection, line 497, in commit
Module ZODB.Connection, line 546, in _commit
Module ZODB.Connection, line 584, in _store_objects
ZODB.POSException.Unsupported: Storing Blobs in <RelStorage at 0x3ee8c745c490 keep_history=True phase=<HistoryPreserving at 0x3ee8bc75f580 stored_count=0 transaction=<transaction._transaction.Transaction object at 0x3ee8be53c0d0> resources=[<Products.CMFCore.indexing.QueueTM object at 0x3ee8bc75f2e0>, <Products.CMFCore.indexing.QueueTM object at 0x3ee8be4b3220>, <Connection at 3ee8c745c0d0>]> blobhelper=<NoBlobHelper> cache=<StorageCache at 0x3ee8c7485c10 hvt=277929106317082641 bytes=969229 len=2149 state=<relstorage.cache.mvcc.MVCCDatabaseCoordinator object at 0x3ee8c744d6a0>>> is not supported.
I agree, it is very possible that the free account on ElephantSQL has no blob support. @agitator that's encouraging. Will definitely want to roll this out on a more robust SQL implementation. CloudSQL for example.