Building microservices sample applicationAnil Allewar
The slides provide details on how to build the sample Microservices application that covers the whole distributed system paradigm.
Please refer to the introduction to Microservices before following the contents in this slide
https://www.slideshare.net/anilallewar/introduction-to-microservices-78270318
Här har ni en presentation om WebSphere Application Server.
Titta närmare på området på dessa länkar: Application Infrastructure (http://www-03.ibm.com/software/products/sv/category/SW600) respektive Connectivity & Integration (http://www-03.ibm.com/software/products/sv/category/SW666).
The presentation deals with the basic principles and best practices for bootstrapping, building and using Docker containers, practical examples how to set up container build files, and contains few important Docker file instructions and Docker CLI commands.
This presentation by Valerii Radchenko (Senior Software Engineer, Consultant, GlobalLogic Kharkiv) was delivered at GlobalLogic Kharkiv JS TechTalk on December 18, 2017.
SpringBoot and Spring Cloud Service for MSAOracle Korea
Cloud 환경에서 MSA를 하기 위해서 Service Discovery, Circuit Breaker 등을 사용하여 Application을 개발하는 방법과 SpringBoot 와 Spring Cloud Service 를 사용하는데, Cloud에서 Kubernetes를 위시한 Container 생태계가 어떻게 MSA에 영향을 미치는지 알아봅니다.
Building microservices sample applicationAnil Allewar
The slides provide details on how to build the sample Microservices application that covers the whole distributed system paradigm.
Please refer to the introduction to Microservices before following the contents in this slide
https://www.slideshare.net/anilallewar/introduction-to-microservices-78270318
Här har ni en presentation om WebSphere Application Server.
Titta närmare på området på dessa länkar: Application Infrastructure (http://www-03.ibm.com/software/products/sv/category/SW600) respektive Connectivity & Integration (http://www-03.ibm.com/software/products/sv/category/SW666).
The presentation deals with the basic principles and best practices for bootstrapping, building and using Docker containers, practical examples how to set up container build files, and contains few important Docker file instructions and Docker CLI commands.
This presentation by Valerii Radchenko (Senior Software Engineer, Consultant, GlobalLogic Kharkiv) was delivered at GlobalLogic Kharkiv JS TechTalk on December 18, 2017.
SpringBoot and Spring Cloud Service for MSAOracle Korea
Cloud 환경에서 MSA를 하기 위해서 Service Discovery, Circuit Breaker 등을 사용하여 Application을 개발하는 방법과 SpringBoot 와 Spring Cloud Service 를 사용하는데, Cloud에서 Kubernetes를 위시한 Container 생태계가 어떻게 MSA에 영향을 미치는지 알아봅니다.
Real time event feeds with NServiceBus and SignalRRoy Cornelissen
Session for SDN Event.
In this session Mark Taling and I explain how we used NServiceBus and SignalR to publish real time events from a production monitor. After a short intro to NServiceBus and SignalR, we dive into some techniques for combining the two:
1) SignalR for relaying events from the back end to a wide range of clients
2) Using SignalR as a transport for NServiceBus
3) Using NServiceBus as a backplane for scaling out SignalR
Learn more about message-based architecture in the cloud including implementation details, real-world examples, insights from leading experts in NServiceBus and Microsoft Azure.
Please use the below URL to view webinar recording.
http://wso2.com/library/webinars/2015/01/understanding-the-wso2-platform/
In this webinar, attendees will understand
Capabilities of the platform
Why a unified platform leads to faster and more cost-effective implementation
How other organizations have benefited from the WSO2 platform
Developing Micro-Services for Cloud using JavaWSO2
The world today moves very rapidly. Developers no longer have time to build, run and maintain large monolithic applications. With the cloud becoming more of reality compared to being just a dream, a new development methodology is required to feed business that starve to be more and more connected. In this presentation Senaka will discuss how WSO2 empowers some of the biggest businesses in the UK build industry leading applications on the cloud using micro-services.
We will be learning how to design and develop micro-services in Java while understanding some of the common micro-service architecture patterns in web applications, n-Tier business applications, service-oriented applications and RESTful API-driven applications for mobile/IoT systems. We will also discuss how we can leverage some of the new improvements in Java EE 8 when building micro-services.
From a developer's point of view, the idea is to give an overall heads up of how to develop micro-services in Java in terms of porting existing applications to the cloud, developing and extended applications running on cloud infrastructure and also what’s coming up and how to be prepared.
The presentation will involve some slides and examples of technology in use based on pre-built source code.
Have you ever used Oracle WebLogic Server? If the answer is no, this presentation is for you. We explain core WebLogic Server concepts and perform a live walkthrough of the console covering core administration areas that include managed servers, JVM servers, JMS resources, logs, data sources, application deployments, and more.
This presentation from the I Love APIs conference makes the case for why Node and Docker are great together for implementing Microservice architecture. It also provides an quick orientation for getting started with Docker Machine, Node, and Mongo with container linking and data volume containers.
Integration Testing as Validation and MonitoringMelissa Benua
In the world of software-as-a-service, just about anyone with a laptop and an Internet connection can spin up their very own cloud-based web service. Software startups, in particular, are often big on ideas but small on staff. This makes streamlining the traditional develop-test-integrate-deploy-monitor pipeline critically important. Melissa Benua says that an effective way to accomplish this is to reduce the number of different test suites that verify many of the same things for each stage. Melissa explains how teams can avoid this by authoring the right set of tests and using the right frameworks. Drawing on lessons learned in companies both large and small, Melissa shows how teams can drastically slash time spent developing automation, verifying builds for release, and monitoring code in production—without sacrificing availability or reliability.
POST/CON 2019 Workshop: Testing, Automated Testing, and Reporting APIs with P...Postman
Presenters: Trent McCann, Engineering Manager, Quality, and Danny Dainton, Senior Quality Engineer
Description: Testing APIs is difficult, it's hard to know where to start. Join us as we take you through some of the different techniques and strategies, using Postman. We will walk you through the basics of Testing using Postman and help answer the questions of "Why do you test?" And "How do you write a test?". We will also talk about making these tests work for you. Pulling it all together and making these tests effective and efficient using Automation practices. Lastly, we will walk you through how to track, trend and some of the hidden benefits of Reporting in Postman, to get the most out of your tests.
Real time event feeds with NServiceBus and SignalRRoy Cornelissen
Session for SDN Event.
In this session Mark Taling and I explain how we used NServiceBus and SignalR to publish real time events from a production monitor. After a short intro to NServiceBus and SignalR, we dive into some techniques for combining the two:
1) SignalR for relaying events from the back end to a wide range of clients
2) Using SignalR as a transport for NServiceBus
3) Using NServiceBus as a backplane for scaling out SignalR
Learn more about message-based architecture in the cloud including implementation details, real-world examples, insights from leading experts in NServiceBus and Microsoft Azure.
Please use the below URL to view webinar recording.
http://wso2.com/library/webinars/2015/01/understanding-the-wso2-platform/
In this webinar, attendees will understand
Capabilities of the platform
Why a unified platform leads to faster and more cost-effective implementation
How other organizations have benefited from the WSO2 platform
Developing Micro-Services for Cloud using JavaWSO2
The world today moves very rapidly. Developers no longer have time to build, run and maintain large monolithic applications. With the cloud becoming more of reality compared to being just a dream, a new development methodology is required to feed business that starve to be more and more connected. In this presentation Senaka will discuss how WSO2 empowers some of the biggest businesses in the UK build industry leading applications on the cloud using micro-services.
We will be learning how to design and develop micro-services in Java while understanding some of the common micro-service architecture patterns in web applications, n-Tier business applications, service-oriented applications and RESTful API-driven applications for mobile/IoT systems. We will also discuss how we can leverage some of the new improvements in Java EE 8 when building micro-services.
From a developer's point of view, the idea is to give an overall heads up of how to develop micro-services in Java in terms of porting existing applications to the cloud, developing and extended applications running on cloud infrastructure and also what’s coming up and how to be prepared.
The presentation will involve some slides and examples of technology in use based on pre-built source code.
Have you ever used Oracle WebLogic Server? If the answer is no, this presentation is for you. We explain core WebLogic Server concepts and perform a live walkthrough of the console covering core administration areas that include managed servers, JVM servers, JMS resources, logs, data sources, application deployments, and more.
This presentation from the I Love APIs conference makes the case for why Node and Docker are great together for implementing Microservice architecture. It also provides an quick orientation for getting started with Docker Machine, Node, and Mongo with container linking and data volume containers.
Integration Testing as Validation and MonitoringMelissa Benua
In the world of software-as-a-service, just about anyone with a laptop and an Internet connection can spin up their very own cloud-based web service. Software startups, in particular, are often big on ideas but small on staff. This makes streamlining the traditional develop-test-integrate-deploy-monitor pipeline critically important. Melissa Benua says that an effective way to accomplish this is to reduce the number of different test suites that verify many of the same things for each stage. Melissa explains how teams can avoid this by authoring the right set of tests and using the right frameworks. Drawing on lessons learned in companies both large and small, Melissa shows how teams can drastically slash time spent developing automation, verifying builds for release, and monitoring code in production—without sacrificing availability or reliability.
POST/CON 2019 Workshop: Testing, Automated Testing, and Reporting APIs with P...Postman
Presenters: Trent McCann, Engineering Manager, Quality, and Danny Dainton, Senior Quality Engineer
Description: Testing APIs is difficult, it's hard to know where to start. Join us as we take you through some of the different techniques and strategies, using Postman. We will walk you through the basics of Testing using Postman and help answer the questions of "Why do you test?" And "How do you write a test?". We will also talk about making these tests work for you. Pulling it all together and making these tests effective and efficient using Automation practices. Lastly, we will walk you through how to track, trend and some of the hidden benefits of Reporting in Postman, to get the most out of your tests.
WSO2 API Microgateway for Easier Development and Greater ScalabilityWSO2
WSO2 API Microgateway is a lightweight, developer focused, cloud-native, decentralized gateway designed to be deployed in microservice architectures. It acts as a gateway for microservices with inbuilt capabilities for service enrichment such as authentication, authorization, rate limiting, and analytics.
This deck covers,
- Architectural changes done for the major version
- Developer centric approach of microgateway
- New features and their use cases
- Deployment patterns for microgateways
- Demonstration of its capabilities (Create microgateway projects, and deploy them in multiple environments)
Watch the webinar on-demand here - https://wso2.com/library/webinars/2019/07/wso2-api-microgateway-for-easier-development-and-greater-scalability/
How to build Simple yet powerful API.pptxChanna Ly
How to build simple yet powerful API from novice to professional. API for beginners, API for gurus, Enterprise level API, REST API, JWT API, Deep dive.
DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017AgileNZ Conference
For too long, audits and security reviews have been seen as resistant to the frequent release of software. Auditors require access to static systems and environments, which would seem to make continuous delivery impossible. Too frequently audits are a fire drill sampling of the current state and temporary fixes are put in place to appease the compliance audit without being integrated into future releases.
About Matt Ray:
Matt Ray is the Manager and Solutions Architect for Asia Pacific and Japan for Chef. He has worked in large enterprise software companies and founded his own startups in a wide variety of industries including banking, retail and government.
He has been active in open source communities for over two decades and has spoken at, and helped organise, many conferences and Meetups. He currently resides in Sydney, Australia after relocating from Austin, Texas. He podcasts at SoftwareDefinedTalk.com, blogs at LeastResistance.net and is @mattray on Twitter, IRC, GitHub and too many Slacks.
Accelerate Enterprise Software Engineering with PlatformlessWSO2
Key takeaways:
Challenges of building platforms and the benefits of platformless.
Key principles of platformless, including API-first, cloud-native middleware, platform engineering, and developer experience.
How Choreo enables the platformless experience.
How key concepts like application architecture, domain-driven design, zero trust, and cell-based architecture are inherently a part of Choreo.
Demo of an end-to-end app built and deployed on Choreo.
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformWSO2
At its core, the challenge of managing Human Resources data is an integration challenge: estimates range from 2-3 HR systems in use at a typical SMB, up to a few dozen systems implemented amongst enterprise HR departments, and these systems seldom integrate seamlessly between themselves. Providing a multi-tenant, cloud-native solution to integrate these hundreds of HR-related systems, normalize their disparate data models and then render that consolidated information for stakeholder decision making has been a substantial undertaking, but one significantly eased by leveraging Ballerina. In this session, we’ll cover:
The overall software architecture for VHR’s Cloud Data Platform
Critical decision points leading to adoption of Ballerina for the CDP
Ballerina’s role in multiple evolutionary steps to the current architecture
Roadmap for the CDP architecture and plans for Ballerina
WSO2’s partnership in bringing continual success for the CD
The integration landscape is changing rapidly with the introduction of technologies like GraphQL, gRPC, stream processing, iPaaS, and platformless. However, not all existing applications and industries can keep up with these new technologies. Certain industries, like manufacturing, logistics, and finance, still rely on well-established EDI-based message formats. Some applications use XML or CSV with file-based communications, while others have strict on premises deployment requirements. This talk focuses on how Ballerina's built-in integration capabilities can bridge the gap between "old" and "new" technologies, modernizing enterprise applications without disrupting business operations.
Platformless Horizons for Digital AdaptabilityWSO2
In this keynote, Asanka Abeysinghe, CTO,WSO2 will explore the shift towards platformless technology ecosystems and their importance in driving digital adaptability and innovation. We will discuss strategies for leveraging decentralized architectures and integrating diverse technologies, with a focus on building resilient, flexible, and future-ready IT infrastructures. We will also highlight WSO2's roadmap, emphasizing our commitment to supporting this transformative journey with our evolving product suite.
Quantum computers are rapidly evolving and are promising significant advantages in domains like machine learning or optimization, to name but a few areas. In this keynote we sketch the underpinnings of quantum computing, show some of the inherent advantages, highlight some application areas, and show how quantum applications are built.
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
Productivity Acceleration Tools for SOA Testers
1. Productivity Acceleration Tools for SOA Testers
Evanthika Amarasiri : Technical Lead - QA
Nirodha Gallage : Senior Software Engineer - QA
April 2013
2. About WSO2
● Providing the only complete open source componentized
cloud platform
- Dedicated to removing all the stumbling blocks to enterprise agility
- Enabling you to focus on business logic and business value
● Recognized by leading analyst firms as visionaries and
leaders
- Gartner cites WSO2 as visionaries in all 3 categories of application
infrastructure
- Forrester places WSO2 in top 2 for API Management
● Global corporation with offices in USA, UK & Sri Lanka
- 200+ employees and growing
● Business model of selling comprehensive support &
maintenance for our products
4. Agenda
● Advantages of using tools for SOA testing
● Choosing the right tool that matches your requirement
● Test Scenarios
- soapUI
- Apache JMeter
● Tips on tools
5. Advantages of using tools & automation for testing
● No need to re-invent the wheel : Reduce time of writing
client programs from scratch
● Reduces time on frequent recursive testing
● Saves time to utilize the specialized knowledge effectively;
i.e. to do exploratory testing
● Reduces test execution time : Takes more time if done
manually
● Helps to release early & release often
● Reduces the possibility of missing test scenarios
● Ability to do dynamic data driven testing
6. Advantages of using tools & automation for testing
Contd...
● Ability to do load/performance testing
● Can generate result summaries and reports easily
● Ability to integrate test suites in build systems and trigger
automatically
8. soapUI - What does it support?
● Automated request generation : i.e. Generate SOAP
request messages when WSDL is provided
● Ability to validate responses : i.e. assertions
● Support for QoS : i.e. Security, MTOM
● Ability to simulate service providers; i.e. mock services
● Ability to do performance testing
● Supports multiple protocols & message types : i.e. HTTP,
HTTPS, REST, JMS, JSON
9. Examples with soapUI
● Web Testcase support
● Invoking secured web services with HTTP basic
authentication
● Invoking a web services secured with asymmetric binding
policy
● Assertions for responses
● Sending HTTP chunk encoded messages
● Executing soapUI test suites/test cases in headless mode
● Testing RESTful APIs
10. Web Testcase support
● Allows to test solutions without ?wsdl
● Invoke simple HTTP methods; i.e. GET, POST, etc on
different services within the same project.
11. Basic Authentication
An example
Service Provider
Service Consumer
Service A
Service B
<GET https://192.168.217.1:
9443/services/HelloService/greet?name=SoapUI
HTTP/1.1
Accept-Encoding: gzip,deflate
Authorization: Basic ZXZhbjplZWVlZWU= Service C
Host: 192.168.217.1:9443
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
12. Signing SOAP messages
● Asymmetric binding
- message security is provided using asymmetric keys
E.g.: public keys.
Client signs the message from his private key and
encrypts from server's public key
Server signs the message from his private key and
encrypts from client's public key Server's Client's
Client's Server's
public key private key public key
private key
- assures confidentiality, integrity and the non-repudiation
13. Increase raw request/response size
When raw view does not show large messages,
configure UI settings ...
... and it will increase
- size of raw request messages
- size of raw response messages
14. Assertions
● Validates responses
● Added to test steps
● Provides different types of assertions; assertions to be
done on response message, for HTTP status codes, SOAP
faults
Add Assertions
15. Sending chunked-encoded requests
● Content-Length
- The length of the request body in octets
POST /services/Axis2Service HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "urn:echoInt"
Content-Length: 3782
Host: 127.0.0.1:9764
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
● Chunked
- Messages are sent in chunks
POST /services/Axis2Service HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "urn:echoInt"
Transfer-Encoding: chunked
Host: 127.0.0.1:9764
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
16. Headless mode compatibility of soapUI
● Windows
○ testrunner.bat -s Axis2Service_TestSuite -r -f C:soapUIlogsresponse -I
C:soapUIprojectsmy_soapui-project.xml
● Linux
○ testrunner.sh -s Axis2Service_TestSuite -r -f /opt/soapUI/logs/response -I
/opt/soapUI/projects/my_soapui-project.xml
● Parameter list
s the test suite to run
c the test case to run
r prints summary report
l ignore errors and continue
f folder to which test results should be saved
18. In which situations we can use JMeter?
● To simulate multiple user access/ load tests
● For data driven testing
● To analyze & measure performance of services
● To validate responses; i.e. assertions
● To create test suites with real world scenarios which involves
executing multiple services sequentially or in parallel
● Support for different transport protocols; i.e. HTTP, HTTPS,
JMS, MAIL, FTP, JDBC, LDAP etc
19. Testing examples with JMeter
Scenario 1 : Testing a web service with dynamic data
1. Send SOAP requests to a Stock Quote web service
2. Need to send dynamic data inputs in the SOAP request
3. Read the response and verify the response is valid
1. Send request to the Web Service
2. Send requests with dynamic inputs
Stock Quote
service
(Currency conversion rate)
20. Testing examples with JMeter
Scenario 1 : What JMeter components you will need?
● Thread Group
● Sampler > SOAP/XML-RPC Request
● Config Element > CSV Data Set Config
● Assertions > Response Assertion
● Listener > View Results Tree
● Listener > Aggregate Report
o
Dem
21. Testing examples with JMeter
Scenario 2 : Testing API's with WSO2 API Manager
1. Call the login API [REST] and acquire an access token
2. Use that access token to invoke the API
3. Read the response and verify the response is correct
1. Invoke Login API
Login API
(Access Token)
2. Invoke Stock Quote API with the Access Token
Stock Quote
API
(Response)
22. Testing examples with JMeter
Scenario 2 : What JMeter components you will need?
● Thread Group
● Config Element > HTTP Cookie Manager
● Config Element > User Defined Variables
● Sampler > HTTP Request
● Config Element > HTTP Header Manager
● Post Processors > Regular Expression Extractor
● Assertions > Response Assertion
● Logic Controller > Loop Controller
● Listner > View Results Tree
● Listner > Aggregate Report
o
Dem
23. Testing examples with JMeter
Scenario 3 : Running JMeter scripts in 'Headless' mode
● Create it once.... Run it anywhere!!!
● All you need is a JMeter distribution a JRE installed and a
command shell
● Linux : ./jmeter.sh -n -t /path/to/JmeterTest.jmx -l /path/to/resultsFile.jtl
● Windows : jmeter.bat -n -t pathtoJmeterTest.jmx -l pathtoresultsFile.jtl
● Use Shell/ Batch scripts to change test parameters and execute
programmatically, for recursive test scenarios.
Refer : http://nirodhawrites.blogspot.com/2012/06/how-to-run-jmeter-tests-in-non-gui-mode.html
24. Tips...
When sending http requests with Jmeter always select
'httpclient4' as the implementation for high load scenarios
When doing load tests disable "View Results Tree", as it
affects thread creation rate.
Always keep test parameters like endpoints, IPs, ports etc as
configurable variables
For high load tests run the Jmeter tests in headless mode, and
write the result to a .jtl file. You can open them later in JMeter
UI, to check results summary, and performance figures.
When measuring performance figures with load tests make sure
only the client and server are running in their respective
machines
25. Tips...
Other free external plugins are available for Jmeter
● Ant plugin http://www.programmerplanet.org/pages/projects/jmeter-ant-task.php
Allows you to run JMeter script as an ANT task
Creates reports
● Google plugin http://code.google.com/p/jmeter-plugins/
Generates new set of graphs for performance test
Have some new throughput controlling components
27. Engage with WSO2
● Helping you get the most out of your deployments
● From project evaluation and inception to development
and going into production, WSO2 is your partner in
ensuring 100% project success