服务热线:400-0033-166
万商云集 - 企业数字化选用平台

企业首选的

数字选用平台

前期做应用不特别复杂的网站,要注意以下几点

2021-01-04 16:38:58 阅读(174 评论(0)

作为一名技术从业者,经过十年的访问,我发现一些知识需要在世界各地阅读才能整理出线索。让我们从一开始就一步一步地谈谈系统点。一个每天访问数千个小网站到每天访问100万或200万个小网站,我们如何才能让它顺利度过这个阶段,不要在技术上有先天性的不足,写给一些技术人员和不懂技术的企业家。了解互联网的人都有自己的想法,有些人把想法付诸实践,做一个网站,然后开始运营。事实上,从纯网站技术的角度来看,由于开源模式的发展,建立一个小网站既简单又便宜。当访问量达到一定数量级时,成本开始飙升,问题开始出现。由于带宽的增加、硬件的扩展和人员扩张带来的成本增加是显而易见的,相当大一部分成本是由代码重构、架构重构甚至底层开发语言更换引起的。最糟糕的是数据丢失。经过几年的努力,他们一夜之间回到了创业之前。降低成本就是增加利润。很多事情,我们一开始就可以避免,先打好基础,以后可以节省很多精力,少操很多心。假设你是一个参与创业的技术人员,目前你很穷,你必须自己做一切,自己付钱。在早期阶段,你必须制作一个应用程序不是特别复杂的网站,所以你应该注意以下几点:首先,一般来说,技术人员(程序员)创业是根据自己的技术背景选择最熟悉的语言,但考虑到你不可能一个人写程序,你必须仔细考虑。无论使用什么语言,最终代码的质量都取决于管理,所以我们仍然从纯语言层面更加实用。java现在很流行、php、.net、python、ruby有自己的优缺点,python和ruby,现在人员招聘还是比较困难的,性能优化会费很大的力气,.net平台买不起windowserver。java、最常用的php。在早期阶段,几乎所有的应用程序都依赖于前端支持的网站。php具有入门简单、设计模式简单、写作快、性能充足等优点。然而,不注意设计模式也是其缺点,容易变得松散,隐藏更多的错误,难以维护。java的优点是有许多成熟的工具来帮助整个管理过程,强大的类型也可以避免一些弱智的bug。大多数java程序员更注重设计模式,而不管它是否实际,代码格式看起来仍然很好。这也是一个缺点,初学者可能过于注重模式,难以解决实际需求。前端不仅仅是html、css之类的。与用户互动的整个部分是前端,包括处理程序。建议使用这类程序的主要原因是开发迅速,员工广泛。至于行为分析、银行接口、异步信息处理等后端,只能根据不同的业务需求选择不同的语言。二、代码版本管理如果开发人员之间的网络速度相似,SVN;比较分散,比如跨国,hg。大多数人还是svn。假设选择了svn,有几个考虑因素。一是采用什么树结构。前期可能只有一个主干,以后需要建立一个分支,比如一个开发分支,一个在线分支,然后每个小组可能需要一个分支。建议在开始时选择两个分支,开发和在线。每个功能在当地测试正确后提交到开发分支,最后统一测试,可以合并到在线分支。如果你喜欢使用svn作为移动硬盘,写一点也没关系,也就是说,当合并更大时,这些人可以建立自己的分支,甚至建立一个本地代码仓库,随意提交自己的分支,然后在测试后提交到开发分支。部署,可手动部署,也可自动部署。手工部署比较简单,一般是直接在服务器上svnupdate,或者找新目录svncheckout,然后把webroot给ln-s。应用程序越复杂,部署就越复杂,没有统一的标准,只要不使用ftp上传的形式,一个是上传文件引用不一致错误率增加,另一个是开发人员的版本很容易与在线版本不一致,导致想要改变错误的单词成为一个回滚杯。若有多台服务器仍建议自动部署,更换代码的机器将从当前服务池中临时撤出,更新后再重新加入。无论项目有多小,养成使用版本管理的好习惯至少可以作为你的备份,我的http://zhiyi.us虽然是wordpress,但还是svn,只改一两句css也是劳动成果。三、服务器硬件不要羡慕大客户和有钱人,看看机房散户区,一台服务器孤独支撑的网站数不胜数。若资金稍有充足,建议至少三台标准配置,分别用于web处理、数据库、备份。web服务器至少需要8G内存,双sataraid1。如果经济稍微宽松一点,或者有更多的静态文件或图片,15ksasraid1 0。数据库至少有16G内存,15ksasraid1 0。备份服务器最好与数据库服务器配置相同。硬件可以自己购买品牌底板,即机箱配备主板和硬盘盒,CPU内存硬盘配备自己,也可以在整个品牌或兼容机上使用。三台机器,市场情况6台、7万也就配齐了。网络服务器可以运行程序和内存缓存,数据库服务器只运行主数据库(如果是MySQL),备份服务器工作相对较多,网络配置、缓存配置、数据库配置与前两个一致,所以网络和数据库任何问题,备份服务器更改ip切换。备份策略可以是drbd、rsync或许多其他开源备份方案。rsync是最简单的,放在cron里自己跑就行了。备份和切换,建议做更多的测试,选择最安全、最适合业务的,并尽可能多地备份。4、尽量不要选择三种机房:联通访问特别慢的电信机房、电信访问特别慢的联通机房、电信联通访问特别慢的移动或铁通机房。那网通机房呢?亲爱的,网通联通N久前合并改名为联通。多寻找,实地考察,多测试,多探索,北京、上海、广州等主要节点城市,或有很多高质量的机房,找到网络质量好,严格的机房管理,特别是严格的管理,不要访问网站,打电话过去知道别人维护你的网络电缆,这比DOS头疼。自己拉几根光纤叫机房,看你的抗风险程度和心理素质。机房可以说是非常重要的,直接关系到网站的访问速度,网站的访问速度直接关系到用户体验。我可以翻墙看风景,但是很难买到网络游戏vpn来打开你这个不太知名的网站。也许你的网站ajax很出色,但document怎么也不ready,有些代码总是与用户绝缘。五、架构初始架构一般比较简单,web负载平衡 数据库主从 缓存 分布式存储 队列。总的来说,就这些东西而言,无数的文章已经重复了细节。根据未来的情况,会有N多WEB、N多主从关系、N多缓存、N多xxx设计。基本方案是现成的,但您比其他人更强大的是,考虑到缓存故障时的雪崩效应、同步数据的一致性和时差、队列的稳定性和失败后的重试策略、文件存储的效率和备份方法。缓存总有一天会失效,数据库复制总有一天会断裂,队列总有一天会写不进去,电源总有一天会烧坏。缓存总有一天会失败,数据库复制总有一天会断裂,队列总有一天会写不进去,电源总有一天会烧坏。根据墨菲定律,网站迟早会成为茶几。六、Linux服务器软件、nginx、php、mysql,除了名字,我们还必须选择版本。Linux有很多发行版本。只要没有特殊要求,就可以选择人数最多、社区最活跃、配置最方便、软件包最完整、最新的,比如debian。、ubuntu。至于RHEL,你使用只能在RHEL上运行的软件吗?剩下的nginx、php、mysql、activemq、其他的等等,除非你改变了这些软件或你的程序,否则尽量更新版本,新版本,意味着新特性、漏洞和性能的增加。道听途说的人总是告诉你,旧版本是稳定的。与特殊业务相比,所谓的稳定性,大多数人没有改变任何服务器软件源代码,绝大多数情况下可以顺利升级到新版本。类似jdk5到jdk6,python2到python3等变化较大的升级还是比较少见的。看看changelog,看看升级说明,根据自己的情况进行评估。升级越早越好。其他家庭使用php6编写程序,并参观php4。优秀的开源程序升级还是很负责任的,看好文档,不要害怕。以上六点已经准备好了。现在我们有了运行环境、基本架构骨架、备份和切换方案,我们应该开始设计和开发。在发展方面有无数的事情,下一篇文章将首先讨论一些重点。七、数据库几乎所有的操作最终都会落在数据库上,而且最难扩展(存储也很难)。在开发之前,必须确定mysql,什么样的表用myisam,什么样的表用inodb。还应确定复制策略和分片策略。在表引擎方面,一般来说,更新不多、不需要事务的表可以使用myisam,需要线路锁定和事务支持的表可以使用innodb。myisam的锁表不一定是性能低下的根本原因,innodb也不一定都是行锁,具体细节要多看相关文档,熟悉引擎特性才能更好的使用。现代WEB的应用越来越复杂。我们经常设计很多冗余的表结构。虽然不符合传统范式,但值得考虑速度。如果要求较高,甚至应结束联合查询。编程时要多注意数据一致性。在复制策略方面,多主多最好从结构开始设计,代码直接根据多主多编写,使用一些技巧避免复制延迟问题,解决多数据库数据是否一致,可以自己编写或找到现成的操作和维护工具。分片策略。总有几个表数据量超大,此时分片是必然的。分片有很多策略,从简单的分区到根据热量自动调整,根据具体业务选择适合自己的。避免以自增ID为主键,不利于分片。存储过程很难扩展。这种情况主要发生在传统的C/S,特别是OA系统转换的开发人员。低成本网站不是一两台小型机器运行数据库处理所有业务的模式,而是机海作战。方便的水平扩展比预分析时间和网络传输流量要重要得多。NoSQL。这只是一个概念。在实际应用中,网站拥有越来越多的密集写作操作、数亿的简单关系数据读取、热准备等,这些都不是传统关系数据库擅长的,因此产生了许多非关系数据库,如redis/TC&TT/MongoDB/Memcachedb等,在测试中,这些都达到了每秒至少1万次的写作操作,内存类型甚至超过5万次。例如,MongoDB可以通过几句配置形成复制 自动分片 在failover的环境中,文档存储也简化了传统的设计库结构再开发模式。很多业务可以用这样的数据库代替mysql。八、缓存。数据库非常脆弱,前面必须有缓存,事实上,我们优化速度,几乎是优化缓存,可以使用缓存,不要跑到后端数据库。缓存有持久缓存和内存缓存。生成静态页面是最容易理解的持久缓存。还有很多,比如varnish的分块缓存、上面提到的memcachedb等。memcached首当其冲。被动更新和主动更新可用于缓存更新。被动更新的优点是设计简单。当缓存空时,它会自动去数据库取数据,然后填写缓存,但很容易引起雪崩效应。一旦缓存大面积失效,数据库的压力可能会急剧上升。主动缓存可以避免这一点,但可能会导致程序无法获取数据。如何配合这两者,程序设计要多动脑筋。九、队列。一个用户操作可能会导致一系列资源和功能的调动。如果同时发生这些调动,压力无法控制,用户体验也不好。这些操作可以放在队列中,由其他模块异步执行,如发送电子邮件和手机短信。开源队列服务器很多,性能要求不高。使用数据库作为队列也可以。只要程序读写队列的接口保持不变,底层队列服务就可以随时更换,类似于Zend_Queue类的Zendframework,java.util.Queue接口等。十、文件存储。除结构化数据外,我们还经常存储其他数据,如图片等。这类数据数量多,访问量大。典型的是图片,从用户头像到用户上传的照片,生成不同的缩略图尺寸。存储的分布几乎和数据库扩展一样困难。在不使用专业存储的情况下,基本上是靠自己的NAS。这涉及到结构。以图片存储为例。图片很容易产生热点。有些图片上传后就没人看了。有些图片可能每天访问数十万次,大量小文件的异步备份也需要时间。为了准备未来的图片,最好在一开始就把图片的域名分开,而不是主域名。很多网站都设置了cookie.domain.ltd,如果图片也在这个域名下,很可能会因为cookie而导致缓存失效,占用多余的流量,也可能会因为浏览器并发线程的限制而导致访问缓慢。有一个简单的方法可以用普通的文件系统存储图片。计算文件的hash值,如md5,以结果第一为第一级目录,因此第一级有16个目录。从0到F,这个字母可以作为域名,0.yourimg.com到f.yourimg.com(客户端dns压力会增加)

内容来源:网络,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

知名的香水品牌有哪些 香水品牌排行榜前十名

相信不管是男士还是女士都有自己喜欢的香水品牌,不同的人有不同的喜好,下面万商云集小编给大家来详细介绍一下知名的香水品牌有哪些 香水品牌排行榜前十名,不知道下面的这些品牌有没有你喜欢的。  1.Anais Anais  是香水经典的后起之秀,…查看详情

直播软件哪个好用 2022热门直播软件有哪些

就现在看来,直播行业是比较赚钱的一个行业,所以,大多数人想通过直播进行赚钱,毕竟这个行业的流量是特别大的,那么,我们需要先了解一下直播软件都有哪些,然后在选择软件去直播。 1、虎牙直播 虎牙直播是我国领跑的游戏直播平台的一种…查看详情

instruments什么意思

music的形容词?形容词是musical,中文意思是adj.音乐的,配乐的;喜爱音乐的,精通音乐的;悦耳的,动听的 Wearenowabletoprintthingssuchasclothing,musicali1trumentsand…查看详情

mysql的数据类型有哪些?

mysql中int是什么字符类型?MySQL中,INT代表整数型。 1、int:在mysql中,int的数据类型是基本数据类型,是对integer的拆箱。 2、integer:在mysql中,integer的数据类型是引用数据类型,是对…查看详情

实用小程序推荐丨符合当下用户习惯的轻量化工具

小程序是各大流量平台都在执行推广是发展规划和市场战略,有人甚至表示,小程序的商业价值是公众号的十倍、百倍。从2018年开始,各类小程序逐渐被推出,微、小、中、大型企业都在推出自己的小程序。几大平台中,微信小程序是B、C端接受度和使用率比较好…查看详情

专利权产品的分类 专利权产品有哪些分类

    在平时很多的小伙伴都不知道专利权产品的分类的基本情况,而且对专利权产品的分类都不是很熟悉,下面万商云集小编就为大家整理了专利权产品的分类这方面的相关内容,希望下面的内容能帮助到各位。    一、专利权产品的分类  专利它是国家按专利…查看详情

卫生巾品牌排行榜前十

以下是关于卫生巾品牌排行榜前十的相关信息: 1.姨妈帮(Always):作为全球领先的卫生巾品牌之一,Always以其舒适度和安全性而闻名。他们提供多种类型的卫生巾,以满足女性在不同时期和需求下的要求。 2.卫洲(Whisper):卫洲是宝…查看详情

海外购物网站有哪些 国外购物网站排名

  国外购物网站有哪些?知乎分享次数最多的网站系列!经常有人问我“你这瓶面霜哪买的呀”或“你这衣服哪买的呀”,我都会说“海淘的呀”,然后对方就嘤嘤嘤“我没有海外卡怎么办”。下面万商云集小编就为大家整理一下关于国外购物网站排名的相关内容。  …查看详情

淘宝刷单应该根据转化率来刷以及我们该怎样提高店铺转化率

刷单对于很多商家并不陌生,相信很多淘宝店都有过刷单的经历,面对现在淘宝如此巨大的竞争,不刷单店铺经营确实很难,这也让很多商家踏上了刷单之路,但是刷单是有风险的,有的商家刷着刷着,发现店铺的流量不但没有提升,反而降权甚至被封店,出现这样的原因…查看详情

内容运营是做什么的 内容运营具体工作内容

现在整个运营行业细分的岗位很多,有用户运营,内容运营,新媒体运营,下面万商云集小编就给大家详细介绍下内容运营是做什么的 内容运营具体工作内容这方面的内容、  1、什么是内容运营  其实你平时打开的门户网站、官网、app以及微博和知乎所有的内…查看详情

专利公告到发证要多长时间 专利公告到发证要多久?

   在平时很多的小伙伴都不知道专利公告到发证要多长时间的基本情况,而且对专利公告到发证要多长时间都不是很熟悉,下面万商云集小编就为大家整理了专利公告到发证要多长时间这方面的相关内容,希望下面的内容能帮助到各位。   一、专利公告到发证要多…查看详情

项目文档管理软件的定义是什么

每一款软件都有它发光发亮的地方,当我们在上班的过程中遇到一系列的难题无法解决的时候,就可以上百度查找相关资料,看看运用什么软件能解决,那么,项目文档管理软件相关介绍是什么? 1、项目文档管理软件定义 项目管理是为了能够使工作…查看详情

通达信炒股软件合集,这几款都不错

对于想要炒股的人员,或者是已经投入股市的人员来说,一定要找到一款好用的软件,来实时的掌握股市的信息,这样才可以避免更多的损失,同时还能够为大家带来更多的惊喜,那么下面就要针对于通达信炒股软件,为大家进行推荐。 1、通达信金…查看详情

好看的动漫网有哪些 2022国内十大动漫网站

  现在很多的人喜欢动漫二次元,其实目前这类群体也逐渐在扩大,很多的人都比较喜欢看这一类的漫画等,下面万商云集小编给大家来详细介绍一下好看的动漫网有哪些 2022国内十大动漫网站,不知道下面的这些网站大家使用过没有。  1、樱花动漫  …查看详情

怎么做自己的小程序?有复杂的开发制作,也有简单的模板搭建

微信小程序覆盖的行业范围很广泛,因此现在越来越多人都想到利用小程序来引流获客。随着各种小程序制作工具的兴起,如今个人制作小程序已经不是什么难事,懂代码的,可以用官方开发工具自己开发;不懂代码的,可以用第三方小程序工具来制作。那么怎么做自己的…查看详情

最新文章