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

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?

主站蜘蛛池模板: 芜湖县| 甘谷县| 鄂托克旗| 灵宝市| 满城县| 陆良县| 凤城市| 新宁县| 洪洞县| 许昌市| 新丰县| 遵义市| 永康市| 和平区| 四会市| 晋州市| 青川县| 安顺市| 库尔勒市| 营山县| 宜良县| 肃南| 五台县| 安丘市| 长治市| 治多县| 古丈县| 吴川市| 资兴市| 尼玛县| 繁昌县| 潜江市| 德清县| 大连市| 喜德县| 神农架林区| 开封市| 丹寨县| 株洲市| 凌海市| 土默特右旗|