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

Starting out as usual

In most modern software systems, data is key. In traditional architectures, the role of persisting and providing access to your system's data tends to fall to a relational database. Typically, this is a monolithic beast, perhaps with a degree of replication. However, this tends to be more for resilience rather than performance or load distribution.

For example, here is what a traditional architecture might look like (which hopefully looks rather familiar):

This presents us with an issue in terms of application scalability in that it is relatively easy to scale our application layer by throwing more hardware to increase the processing capacity. However, the monolithic constraints of the data layer will only allow us to go so far before diminishing returns or resource saturation stunts further performance increases. So, what can we do to address this?

In the past and in legacy architectures, the only solution to this issue would be to potentially increase the performance capability of the database infrastructure by either buying a bigger, faster server, or further tweaking and fettling the utilization of the available resources. Both options are dramatic, either in terms of financial cost and/or manpower. So, what else could we do?

主站蜘蛛池模板: 都兰县| 宜州市| 梨树县| 龙海市| 辽宁省| 天峨县| 乌恰县| 郯城县| 彭山县| 徐水县| 诸暨市| 开阳县| 额济纳旗| 德阳市| 昌黎县| 荣成市| 张家界市| 永春县| 门源| 松溪县| 江都市| 汨罗市| 惠水县| 东乌珠穆沁旗| 玉龙| 微博| 阿拉善盟| 南靖县| 双城市| 四子王旗| 鸡泽县| 灵丘县| 泽州县| 花莲市| 嵩明县| 龙门县| 吉安市| 溧水县| 萍乡市| 沁水县| 岳阳县|