GCP Cloud Functions - ghdrako/doc_snipets GitHub Wiki

A serverless compute platform for executing code written in Java, Python, Go, or Node.js

Cloud Functions provides a scalable platform where developers can write and upload their independent functions, and the fully managed infrastructure does the initial provisioning, managing, and scaling (both up and down). Cloud Functions is event-driven and at the core of Cloud Functions sits Cloud Publish/ Subscribe (Pub/Sub), Google Cloud Storage (GCS), HTTP, and HTTP Secure (HTTPS) requests.

Cloud Functions is an ideal compute option for developers who want a fully managed serverless platform to minimize server-side code. Cloud Functions enables developers to not worry about different runtime environments while still having additional capabilities such as powerful in-built monitoring, debugging, networking, and security features.

Furthermore, using Cloud Functions makes even more sense if your application already makes use of HTTPS requests or Cloud Pub/Sub or if you're planning to use the large library of Google's existing application programming interfaces (APIs). Either way, Cloud Functions is a safe and reliable bet if you just want to work on the event logic while the cloud takes care of the rest. You can achieve a lot with Cloud Functions, including relatively simple tasks such as sending emails, analyzing data, uploading pictures or Portable Document Format files (PDFs), and even complex enterprise-level applications.

Cloud Functions, this means that you are constrained to an event-driven architecture, which means that you must use events. You can also only use specific language runtimes. Furthermore, one of the great things about Cloud Functions is that your entire application is made up of functions, but as the application grows, managing and debugging all of these independent functions can become a bit tricky. Finally, your application may not be suitable to be broken down into independent functions in the first place or may be event-driven

Serverless VPC Access

There are two main benefits to using Serverless VPC Access:

  • Requests sent to your VPC network are never exposed to the internet.
  • Communication through Serverless VPC Access can have less latency compared to the internet

A Serverless VPC Access connector consists of connector instances. Connector instances can use one of several machine types. Larger machine types provide more throughput.

You can use Serverless VPC Access to access Compute Engine VM instances, Memorystore instances, and any other resources with internal DNS or internal IP address.