Microservices / Service-oriented Architechture / Serverless function

#microservices #soa #Service-orientedArchitechture #ServerlessComputing

What is it?

  • Services that run snippets of back-end code for apps and websites without any overhead of managing servers. http://www.techrepublic.com/article/serverless-computing-the-smart-persons-guide/
  • that’s where you have to begin with serverless computing: Of course there will always be servers. Serverless computing merely adds another layer of abstraction atop cloud infrastructure, so developers no longer need to worry about servers, including virtual ones in the cloud. http://www.infoworld.com/article/3093508/cloud-computing/what-serverless-computing-really-means.html
  • Microservices are a more concrete and modern interpretation of service-oriented architectures (SOA) used to build distributed software systems. Microservices architectural style is a first realisation of SOA that has happened after the introduction of DevOps and this is becoming the standard for building continuously deployed systems. In a microservices architecture, services should be small and the protocols should be lightweight. The benefit of distributing different responsibilities of the system into different smaller services is that it enhances the cohesion and decreases the coupling. This makes it much easier to change and add functions and qualities to the system anytime. It also allows the architecture of an individual service to emerge through continuous refactoring, hence reduces the need for a big up-front design and allows for releasing the software early and continuously. https://en.wikipedia.org/wiki/Microservices

Why it matters?

It is way much cheaper than Cloud!

Today, there are several trends that are forcing application architectures to evolve. Users expect a rich, interactive and dynamic user experience on a wide variety of clients including mobile devices. Applications must be highly scalable, highly available and run on cloud environments. Organizations often want to frequently roll out updates, even multiple times a day. Consequently, it’s no longer adequate to develop simple, monolithic web applications that serve up HTML to desktop browsers.
This site describes a new, alternative architecture: microservices. Applications with a microservice architecture consist of a set of narrowly focused, independently deployable services. Read on to find out more about this approach and its associated trade-offs. http://microservices.io/

Pattern: Serverless deployment
You have applied the Microservices pattern and architected your system as a set of services. Each service is deployed as a set of service instances for throughput and availability. http://microservices.io/patterns/deployment/serverless-deployment.html

Who cares about microservices / serverless computing?

Microsoft! Amazon! Google! IBM!

Amazon has AWS Lambda:

AWS Cloud – Run code without thinking about servers. – Pay for only the compute time you consume.
AWS Lambda lets you run code without provisioning or managing servers. You pay only for the compute time you consume – there is no charge when your code is not running. With Lambda, you can run code for virtually any type of application or backend service – all with zero administration. Just upload your code and Lambda takes care of everything required to run and scale your code with high availability. You can set up your code to automatically trigger from other AWS services or call it directly from any web or mobile app. https://aws.amazon.com/lambda/

Google has Google Could Function

CLOUD FUNCTIONS ALPHA – A serverless platform for building event-based microservices. Lightweight Event-based Microservices
Google Cloud Functions is a lightweight, event-based, asynchronous compute solution that allows you to create small, single-purpose functions that respond to cloud events without the need to manage a server or a runtime environment. Events from Google Cloud Storage and Google Cloud Pub/Sub can trigger Cloud Functions asynchronously, or you can use HTTP invocation for synchronous execution … and so on … https://cloud.google.com/functions/

Microsoft has Microsoft Azure Service Functions

Process events with serverless code
. Azure Functions is a serverless event driven experience that extends the existing Azure App Service platform. These nano-services can scale based on demand and you pay only for the resources you consume. … Pay only for what you use
Pay only for the time your code is running. You’ll be charged based on the number of resources Azure Functions needs, only for as long as it takes your code to execute. https://azure.microsoft.com/en-us/services/functions/

What’s next?

see this: http://www.techrepublic.com/videos/video-serverless-computing-in-less-than-two-minutes/
see who’s using microservices: http://microservices.io/articles/whoisusingmicroservices.html

see more resources:

Hope to see more information sharing in this particular areas.

IoT – Internet of Things

#IoT #InternetOfThings

What is it?

1.  https://www.microsoft.com/en-us/cloud-platform/internet-of-things

2. http://www.intel.com/content/www/us/en/internet-of-things/infographics/guide-to-iot.html

How it works?

1. https://iot-analytics.com/10-internet-of-things-applications

2. http://internetofthingswiki.com/iot-applications-examples/541/

3. http://www.ti.com/ww/en/internet_of_things/iot-applications.html

4. https://www.silabs.com/iot/Pages/iot-applications.aspx

5. http://www.intel.com/content/www/us/en/internet-of-things/industry-solutions.html

(my version of) Multiple Excel Sheets using Excel Buffer

There have been some earlier posts providing solution on this subject, those are all good and well tested.
However, I would also share another version, which I believe this is much simpler and shorter.

Continue reading “(my version of) Multiple Excel Sheets using Excel Buffer”

This Is Merging! 2.0 on NAV9 (2016) – issue with Microsoft.Dynamics.Nav.Client.CodeViewerTypes

Quoting from code4nav.com/TIM/#information, “This Is Merging!” is “a tool for automating your merging needs.” See how great it is, open this: code4nav.com/TIM. The man behind the product is José Castro, as introduced here: code4nav.com/about-me.

I am using This Is Merging! 2.0 (TIM2) for NAV8 (2015). It works fine, and I just follow exactly the instruction / manual, and nothing behave differently.

Continue reading “This Is Merging! 2.0 on NAV9 (2016) – issue with Microsoft.Dynamics.Nav.Client.CodeViewerTypes”

(how I was) Using NAV2016 App on Smartphone to Access NAV2016 on Azure

All are started with Azure VM running Dynamics NAV2016. I have made a post about it in this site and in Dynamics community blog .

If everything is fine, next you need to download the apps for Android, iOS, and/or Windows;

  • for Android, go here
  • for iOS, go here
  • for Windows, go here

I use Android apps to share some previews.

1.     You need to download the certificate. Open your phone browser, and go to your cloudapp.net web page. Normally it is like http://[your azure cloud name].cloudapp.net/Certificate.cer

It will automatically download the file, then you need to find the file, tap it to install.

That’s all.

2.     Now open your NAV2016 apps. My Azure server name is http://NAV9D0.cloudapp.net , my NAV service is ‘NAV’ . So I put in the ‘Service name’ : https://NAV9D0.cloudapp.net/NAV

NAVphone02 – – – NAVphone03

Continue reading “(how I was) Using NAV2016 App on Smartphone to Access NAV2016 on Azure”

(how I was) Setting up Microsoft Azure VM for running Dynamics NAV

This is my first try in setting up Microsoft Azure to create Dynamics NAV2015 and NAV2016 environment.

Sign Up to Microsoft Azure Service

At first, we need to have Microsoft Azure account, which is normally under corporate accounts. You can go to: https://azure.microsoft.com/en-us/pricing/free-trial/ – then click ‘Try Now’, then follow the process of signing up and creating account. The azure web site requires your phone number for verification code, and your credit card information for verification.

Once you finish the signing up, you will be directed to new website, https://portal.azure.com – like this:
00 login azure n create

Sign up into Azure is done. Now we create a server, so that we can load NAV in it.

Continue reading “(how I was) Setting up Microsoft Azure VM for running Dynamics NAV”

PowerBI and NAV2015 – a quick preview

I have a small idea on how to produce a good data visualization for your organization. I’m using a Microsoft products, Excel PowerBI and integrated with Microsoft Dynamics NAV2015.

Microsoft has had a product called Excel Power BI for quite sometime, but I just getting into it starting this year (2015). Excel Power BI is a great tool that enables you to find information and visualize data, share discoveries, and collaborate in intuitive new ways – you can read more here and here (2).

Continue reading “PowerBI and NAV2015 – a quick preview”