官术网_书友最值得收藏!

Extensibility

A microservices-based architecture for the Helping Hands application not only makes it easier to deploy and scale but also makes it highly extensible. For example, by deploying a separate Lookup Service for search operations, it is now possible to use a database such as Elasticsearch only for search operations and Datomic for all other microservices that require consistent transactions.

In the future, if there is a better technology available, it will be easier to deploy services with a newer technology. Newer technology may also come with hardware challenges. For example, a database such as MapD (https://www.mapd.com/) runs on GPUs (https://en.wikipedia.org/wiki/Graphics_processing_unit). To use such databases, microservices need to run on specialized hardware. Since microservices can be deployed in isolation on the same or an entirely separate machine, it is possible to deploy services that need GPUs on machines that support GPUs without affecting the way they interact with other services. This is one of the advantages of microservices—you are not bound by the technology or underlying hardware and any changes done are localized within the bounded context of the service.

Data analytics is now an integral part of any web-based application. It not only helps us understand the usage patterns of the application, but also helps provide better services to the users. By generating event logs for all the changes done to entities, it is also possible to further extend the Helping Hands application to analyze usage patterns. For example, one can listen to events generated by the Order Service and study service usage patterns by demography. It should also be possible to analyze the popularity of services by location and provide customized offers to users as notifications.

主站蜘蛛池模板: 凭祥市| 莱西市| 北安市| 屏南县| 土默特左旗| 百色市| 成都市| 库伦旗| 泗洪县| 宿州市| 潼南县| 白玉县| 连城县| 濮阳县| 大埔县| 遂溪县| 龙山县| 黄骅市| 新野县| 潼关县| 靖边县| 江孜县| 达日县| 泌阳县| 文登市| 磐安县| 长宁县| 林西县| 和平区| 老河口市| 纳雍县| 杭锦后旗| 三亚市| 达州市| 吴桥县| 五寨县| 南阳市| 南充市| 邵东县| 内江市| 深州市|