Who we are

We are the developers of Plastic SCM, a full version control stack (not a Git variant). We work on the strongest branching and merging you can find, and a core that doesn't cringe with huge binaries and repos. We also develop the GUIs, mergetools and everything needed to give you the full version control stack.

If you want to give it a try, download it from here.

We also code SemanticMerge, and the gmaster Git client.

Announcing the new Plastic Cloud: cloud2

Saturday, May 30, 2020 Pablo Santos 0 Comments

We just launched our new Plastic Cloud, code-named cloud2. New users can evaluate and purchase this new offering, while we will migrate all current customers from cloud1 to cloud2.

The new cloud2:

  • It's incredibly fast. Better servers, more efficient, and intensive memory use and caching, and much faster metadata storage and improved data transfer.
  • Dramatically reduces latency. More metadata servers mean you are closer to your data.
  • Enables long-awaited features. Access shelves in the Cloud, move changesets to other branches, use cloud triggers, and much more. We have a very solid foundation for feature parity with on-prem servers.

If you are a user, our customer success team will contact you soon to migrate. If you feel you can't wait, then just contact us 😉

The gory details

What really changed between our first version of Cloud, launched a few years ago, and the new one?

If you check the info about Plastic Cloud on our website, you'll find a beautiful graphic like this one, which shows all our datacenters around the world.

When you sign up to Plastic Cloud, you can select the nearest datacenter to get the maximum data transfer speed.

But there was a caveat. There were many datacenters (taking advantage of the Microsoft Azure infrastructure), but only a single metadata datacenter located in West Europe.

This means folks in East Australia had to wait for every request to go up to West Europe and come back each time they wanted to check Branch Explorer or the history of a file. It wasn't really that slow, but we wanted to make it much faster.

Enter the cloud constellation

So, the main goal was to add a bunch of full-featured servers for both data and metadata around the world. At the time of this writing, we have 3 servers (marked in red in the graphic below) with a few more planned (in black):

Before, the datacenters were just blob storage. Now they are full-featured servers, so you can dramatically reduce latency in all your operations.

Goodbye SQL backend

Cloud1 stored most of its metadata in SQL Azure. We used SQL systems as metadata storage for years, until we created our own repo storage (a.k.a. Jet, do not confuse with a deprecated database, more info here).

Since then, mostly every Plastic SCM customer has moved to Jet, including all our largest deployments with 1000+ users.

And it was the time to apply the same boost to our Cloud servers.

Now you can take full advantage of the ad-hoc repo storage, with some optimizations for cloud operations.

Data, the actual blobs where your files are stored, continue in cloud blobs, which are more affordable.

Optimized data transfer

In cloud1, we significantly optimized data. We took advantage of Azure's blobs so the data was directly downloaded from the client-side, without going to our own servers. It allowed us to scale as much as the cloud provider did (which was a lot).

There was a caveat, though. Blob data transfer is done with REST APIs, instead of our super optimized binary network protocol. This is not bad for huge files. But it is not as good when you need to download thousands of tiny source code files.

This is why all data transfers go through the regional servers in cloud2, taking advantage of all our network optimizations.

We do not discard reverting to direct cloud blob access from the client-side for big files only, but we still have to run some benchmarks.

Multi-cloud solution

While the old cloud1 ran on Azure only, cloud2 is multi-cloud. We can easily deploy to Google Compute Platform, Amazon EC2, and Azure. This gives us great flexibility and a more solid foundation for upcoming services.

The new setup is much simpler too. We just need resources from you that are easily available in all the major providers.

New features available

With the jump to cloud2, a bunch of features that were on-prem only became available:

  • Shelves. Probably the number one feature requested by cloud users.
  • Moving changeset to a new branch.
  • Changing revision type (although we plan to deprecate this altogether).

Upcoming new features

We didn't move to cloud2 only for speed (although this was important). But also because it creates the foundation to continue adding more and more features:

  • Webtriggers. They'll be enabled very soon. We're testing them as we speak.
  • Mergebots. Our way to enable DevOps.
  • WebUI. A web repo browser.
  • GitServer. This is one of the major reasons for the entire redesign: you'll be able to add GitServer to Cloud.

Other products coming

Thanks to the cloud2 foundation, we're about to release a bunch of other Plastic Server products:

Cloud-Backed On-Premises Plastic Server

On-premises server that stores the data directly in your cloud storage of choice. You will pay for your own storage. Simply, the data will be always in cloud with a local cache. You don't have to worry about huge local disk usage, and migrating to new hardware will be super fast (just move metadata).

Cloud-Private Plastic Server

A full server running on your cloud of choice. You are responsible for setting up and running the server. You were already able to do this before (it is the same setup as a regular on-prem server but running on Amazon/Google/Azure). But you had to use disks to store data before cloud2. Disks are way more expensive than cloud blobs. The new cloud2 codebase allows a regular server to access blobs in the cloud of choice, giving a great cost-effective option if you want to run your own cloud infrastructure.

Plastic Cloud Backup

Every Team Edition or Enterprise Edition can have a Plastic Cloud account in backup only mode, so data and metadata are silently backed up to the cloud.

Pablo Santos
I'm the CTO and Founder at Códice.
I've been leading Plastic SCM since 2005. My passion is helping teams work better through version control.
I had the opportunity to see teams from many different industries at work while I helped them improving their version control practices.
I really enjoy teaching (I've been a University professor for 6+ years) and sharing my experience in talks and articles.
And I love simple code. You can reach me at @psluaces.

0 comentarios: