Skip to main content

How to create a simple Serverless API Using Oracle Cloud Functions

Modern cloud applications are moving toward serverless architectures because they reduce infrastructure management and allow developers to focus on code.

Oracle Cloud Infrastructure (OCI) provides a powerful serverless service called “Oracle Functions”. It allows developers to run code without managing servers.

In this post, I’ll go through how to create a simple serverless API using Oracle Functions and expose it through an HTTP endpoint.

Oracle Functions provides several advantages,

  • No server management
  • Automatic scaling
  • Pay only for execution time
  • Easy integration with other OCI services

 The process of flow is as below,

  1. User sends an HTTP request
  2. OCI API Gateway triggers a Function
  3. Function processes the request
  4. Response is returned

Lets see how to create a simple function.

1.      First create a function using the 'Fn Project CLI' supported by OCI.

fn init --runtime python myhello-function
cd myhello-function

2.      Open the func.py file and update it.

def handler(ctx, data: bytes=None):
    name = "Test"
    if data:
        name = data.decode('utf-8')
    return f"Hello {name} Greetings from Oracle!"

This will read input and returns a message.

 3.      Deploy it to Oracle Cloud.

fn deploy --app myapp

After deployment the function will run inside OCI’s serverless environment.

4.      You can test it using:

echo -n "Pubudu" | fn invoke myapp myhello-function

5.      You should see below output

Hello Pubudu Greetings from Oracle!

You can make this function public by creating an OCI API Gateway, connecting it to the deployed function and generating a public HTTP endpoint. This allows the function to be accessed as a serverless API.

Comments

Popular posts from this blog

Building Continuous Data Trust with Oracle GoldenGate Veridata 26c

Today I'll discus on how we can build continuous data trust with Oracle GoldenGate Veridata 26c! As we accelerate towards hybrid and multi cloud architectures , one challenge keep coming up. That is "H ow do you trust your data across all these platforms?" With increasing data movement, replication, and transformation, even small changes can lead to major business risks. This is where Oracle GoldenGate Veridata 26c comes in handy! Rather than just validating data occasionally, the focus now is on continuous data trust . What is Veridata? It is a tool to compare data across different systems. It ensures source and target databases are in sync. It works during , Data migration, Replication setups, Ongoing operations. What’s new in Veridata 26c? 1. Support for Modern Architectures Built for hybrid, multi-cloud, and lakehouse environments with support for heterogeneous databases. 2. Continuous Data Validation Enables ongoing validation to detect data drift and inconsisten...

Top 5 Performance Tuning Tricks Every Oracle DBA Should Know!

Performance tuning in Oracle Database often focuses on obvious areas like indexes, SQL rewrites etc. But some of the most impactful improvements can come from lesser known techniques. Here are 5 such tuning tricks that can make a real difference in production environments.   Use SQL Plan Baselines to Stabilize Performance Even properly tuned queries in Oracle Database can suddenly degrade when execution plans change due to statistics refreshes or system upgrades. Using SQL Plan Baselines helps maintain stable and efficient execution plans, preventing unexpected performance regressions especially in highly changing workloads. SELECT * FROM DBA_SQL_PLAN_BASELINES; So, don’t just capture baselines, but periodically change them to allow the optimizer to adopt better plans when appropriate. Use Automatic Indexing Automatic Indexing is a useful feature in Oracle Database that can improve performance with minimal effort.  It was introduced in Oracle Database 19c and enhance...

Bring AI to Data , A Smarter Way with Oracle!

  “Bring AI to Data” is a term I recently heard during the Oracle AI World in Singapore last week and it really caught my attention. It sounded simple but the idea behind it is quite powerful. So I thought it’s worth exploring a bit more! Normally, working with data and AI meant one thing, which is, moving data around. We would extract data from databases, send it to external tools or platforms, build machine learning models and then push the results back into the database. But this approach adds complexity, increases costs and introduces security risks. But now, Oracle is changing that model by bringing AI to where the data already is ! The concept of “Bring AI to Data” is straightforward but powerful. Instead of moving large volumes of data across systems, Oracle allows you to run AI and machine learning directly inside the database. This means that data do not have to leave its secure environment. This results faster processing, reduced data duplication, improved security ...