网站外包
展示网站项目需求
小型的外包项目,给客户A做一个产品展示网站,客户A的朋友感觉效果不错,也希望做这样的产品展示网站,但是要求都有些不同:
- 有客户要求以新闻的形式发布
- 有客户人要求以博客的形式发布
- 有客户希望以微信公众号的形式发布
传统方案解决网站展现项目
- 直接复制粘贴一份,然后根据客户不同要求,进行定制修改
- 给每个网站租用一个空间
- 方案设计示意图
传统方案解决网站展现项目问题分析
- 需要的网站结构相似度很高,而且都不是高访问量网站,如果分成多个怩空间来处理的话,相当于一个相同网站实例对象很多,造成服务器的资源浪费
- 解决思路: 整合到一个网站中,共享其相关代码和数据,对于硬盘,内存,CPU,数据库空间等服务器资源都可以达成共享,减少服务器资源
- 对于代码来说,由于是一份实例,维护和扩展都更加容易
- 上面的解决思路就可以使用 享元模式 来解决
享元模式
定义
享元模式(Flyweight Pattern) 也叫蝇量模式:运用 共享技术有效地支持大量细粒度的对象
常用于系统底层开发,解决系统的性能问题.像 数据库连接池,里面都是创建好的连接对象,在这些对象中有我们需要的则直接拿来使用,避免重新创建,如果没有我们需要的,则创建一个
享元模式能够解决 重复对象的内存浪费的问题,当系统中有大量相似对象,需要缓冲池时.不需要总是创建新对象,可以从缓冲池里拿哦.这样可以降低系统内存,同时提高效率
享元模式 经典的应用场景 就是池技术了, String 常量池,数据库连接池,缓冲池等等都是享元模式的应用,享元模式是池技术的重要实现方式
这两个"hello" 他就是 嗯 用的一个
第二次new 的时候 这是在 堆空间中 创建了一个地址