TemporalX — S3 API vs StorJ IPFS

TemporalX has an upcoming S3 compatible API, allowing you to use existing S3 clients without any intermediary layer. The screenshot below is quite literally S3 running on IPFS. When you use our application, you can use existing S3 clients like the Minio client to interact with IPFS and store your data on IPFS! Easy as 1,2,3…

s3 on IPFS

Let’s give an explanation of how streamlined this process is. Since RTrade designed the initial implementation of a storj capable ipfs node (https://github.com/RTradeLtd/storj-ipfs-ds-plugin) let’s take a look at how this all works. Storj provided an S3 API and ipfs has the ability to use custom datastores. The way it works is taking a custom datastore that makes calls to the Storj S3 API to store the data. That’s all there is to it.

The problem is if you want to use Storj IPFS you need to either completely redesign your S3 application to use an IPFS API, or you need to be already using an IPFS API and point it to a storj IPFS node (aka, pointing it to an IPFS node using the storj datastore).

Now contrast this with the example from the screenshot we have shown, all you need to do is simply point your S3 client to a different endpoint, and you are now seamlessly using IPFS! In fact, unless you specifically ask a separate API for the IPFS hashes of the buckets and objects you create with our S3 API, you would never know you are using IPFS.

So you want an S3 backed IPFS node, or maybe even an S3 API compatible IPFS node? We’ll get you set up, and we promise we’ll have the answers to your technical questions that you’re looking for.

TemporalX’s development environment is live!

This is an unauthenticated, freely accessible endpoint that you can use to experiment with TemporalX’s gRPC API! We’ve got a pretty extensive and extremely robust API, with everything from IPNS, file uploads and PubSub messaging.

We have pre-generated gRPC client code for javascript, java, python, and golang over on GitHub, along with the raw protocol buffer files in case you want to generate client code in other languages. To check it out head over to github.com/RTradeLtd/TxPB.

You can start exploring all that TemporalX has to offer by pointing your gRPC Clients to xapi-dev.temporal.cloud:9090 . If you want to experiment with TemporalX’s S3 API, point your S3 clients to 172.218.49.115:25001 , since this is also unauthenticated you can use any access key and secret key you. If you have any difficulties accessing this, feel free to hop on by our discord room or telegram and we'll get your problems sorted out right away!

We’ve made public an endpoint that you can use to see benchmarks we make as we release new versions of TemporalX https://rtradeltd.github.io/TemporalX/. The benchmark counts both the TemporalX server, and TemporalX gRPC client. The exact benchmark setup is each test spins up a standalone TemporalX server with on-disk storage and then instantiates the go-temporalx-client gRPC client sdk as client.

What Is TemporalX?

A faster and more scalable IPFS implementation that will let your business meet it’s data demands while maintaining interoperability with the rest of the IPFS network. With no dependencies on go-ipfs, TemporalX has been built from the ground up to be lean and efficient without sacrificing functionality. TemporalX will allow us to do some really cool things like an s3 API compatible ipfs node, and it’s performance is out-of-this-world compared to go-ipfs. More information visit our website.

TemporalX Performance

As demonstrated by our comparison benchmarks with go-ipfs, TemporalX has consistent and predictable performance regardless of your workload. When leveraging the gRPC benefits, TemporalX can be up to 10 times faster than go-ipfs. When not leveraging gRPC benefits performance is 2–3 times faster than go-ipfs.. Click here to see benchmark results.

Thanks for stopping by feel free to chat with our team for any questions, concerns on our Temporal support chat channel. We have some great new features and rolls out happening very soon such as Multi-IPFS Networks/Multi-DHT and DHT overlay.