Sorry, you need to enable JavaScript to visit this website.

You are here

Fine-tuning MMS performance on Telstra's Messaging API

BY Rajeev Ramani 30 August 2018

 

Here at TelstraDev, we strive to make the best possible developer experience, from the recent redesign of our developer docs to our upcoming credit card payment option release. This focus on developer experience is critical, especially when demand starts to scale and platform performance needs to be maintained with increasing workloads placing stress on server-side processes and functions.

 

One area that we have recently tuned is our Messaging API, more specifically MMS performance. The goal was to measure the throughputs we could support through the API and to iteratively re-engineer our server-side functions to increase our capacity to meet our customer's needs.

 

We worked closely with our customers to understand their:

  1. Use cases
  2. Payload Size
  3. MMS file Types
  4. Throughput requirements
  5. Peak traffic time

Based on the customer feedback and analytics data we designed and developed the required test cases.

Tools

Performance testing used to be an art form. People had specialized skills to design, build, run, collate and generate reports. Fortunately, current tools (abstractions) make that process a lot easier. We used a combination of Jmeter and Redline services for testing purposes. These are two awesome tools that really ease the pain for distributed performance testing. Another useful tool is Blazemeter.

 

Test

The shape and size of the payload were set up to replicate what our customers typically send through the API, some samples were provided by the customers to ensure we were testing a real use-case. On Jmeter we set up the test for 35 Threads for 15 mins with unlimited loops. We chose this number based on discussions with customers and our own analytics data. The ramp up time was set to 1. These tests were run during normal business hours to ensure we stress tested our production systems as well. The (multiple) simulations were run based on customer usage patterns.

 

 

Summary

The results speak for themselves. The images and tables below show some of the outcomes from the test.

Measure

Result

MMS Payload

350KB

Error rate

1.43%

Ave response time

824ms

Throughput

42 / sec

Total MMS sent

38,130

Test duration

15min

 

Transactions per second

 

Response times

 

Thanks

We would like to thank our customers especially MobileDigital for their help and support during the testing. This may look easy but it takes a lot of teamwork between support, API and backend teams to ensure that the platform is stable during the tests and regular customers are not affected.

 

Feedback

If you have any questions or comments please do send those to telstradev@team.telstra.com. We would love to hear back from you on your experience of TelstraDev. You can also visit and register at https://dev.telstra.com.

.on-the-fly-class-example {
margin-left: 0px;
}
@media (max-width: 767px) {
.on-the-fly-class-example {
margin-left: 0px;
}
}

Related Blogs

anonymous's picture

By Michelle Howie

15/7/21

  • arduino
  • iot

Real Time SMS alerts for dropped devices

  So in part 1 and part 2 of this workshop series, we’ve gone through how we can poll...
anonymous's picture

By Michelle Howie

15/7/21

  • arduino
  • iot

Ask for Environmental Sensor Data via SMS

If you have an environmental sensor set up in your home, office, farm etc and want to check the temp...
anonymous's picture

By Michelle Howie

15/7/21

  • arduino
  • iot

Control your IoT Device remotely with SMS commands

Developing with the Internet of Things is fun. It’s challenging. It’s frustrating at tim...
anonymous's picture

By Tim McMahon

2/6/21

  • messagingAPI
  • airquality

SMS alerts for hazardous air quality during bushfire season

I woke up one morning in January 2020 and discovered that the air quality in Melbourne had drop...
iot home garden project with arduino and azure
anonymous's picture

By keith coutlemanis

10/11/20

  • arduino
  • azure

Azure Internet of Things Garden Project with Arduino

I want to showcase a project I have been working on to reflect the interesting things you can do wit...
anonymous's picture

By Trent Steenholdt

10/11/20

  • iot
  • DIY

Home IoT Project using Azure

In this blog series, I’m going to write about how Internet of Things (IoT) enabled my gate,...
anonymous's picture

By Michelle Howie

20/10/20

  • hackathon
  • messagingAPI

Connecting our community in an emergency with mobile...

What do you get when you give 700 Hackers, Hustlers and Hipsters across Australia and New Zealand, a...
anonymous's picture

By Michelle Howie

3/8/20

  • messagingAPI
  • Tutorials

Get Started with the TelstraDev Messaging API

Have you ever wondered what an API is and why you should care? Have you ever had a mid-career cri...
anonymous's picture

By Christy Daguia

15/11/18

  • messagingAPI
  • replyRequest

Conversation via Telstra Messaging API

Creating a message thread can be done via Telstra Messaging API, whereby you can continue sending an...
anonymous's picture

By Marcus Kennan

12/2/18

  • callbacks
  • Messaging SDK

Understanding Messaging API Callbacks - Part 2

Welcome to the second in a two part series on understanding the messaging API callbacks. In our firs...
anonymous's picture

By Marcus Kennan

30/1/18

  • callbacks
  • postman

Understanding Messaging API Callbacks - Part 1

The callback functionality of the messaging API is a great utility allowing you to track the deliver...