网站建设中网站制作的关键技术点是什么呢?

现在企业网站制作,已经慢慢的得到了企业的重视,以前由于网站的成本高大部分是模板建站的,导致很多的网站没有优化好,最后不得不又重新去做网站制作,那么关于网站制作的关键技术点是什么呢?

网站建设中网站制作的关键技术点是什么呢?
网站建设

Java处理大并发动态请求优化的问题

Java和通用的Web服务器(Nginx或Apache)相比,在处理大并发的HTP请求时要弱一点,所以都会对大流量的Web系统做静态化改造,让大部分请求和数据直接在NginxI服务器或者Web代理服务器(Varnish、squid等)上直接返回(可以减少数据的序列化与反序列化),Java层只处理少量数据的动态请求。针对这些请求可以使用以下优化手段:

直接使用 Servlet处理请求。避免使用传统的MVC框架,可以绕过一大堆复杂且用处不大的处理逻辑,节省1毫秒的时间一取决于对MVC框架的依赖程度;

直接输出流数据。使用resp.getoutputstreamo而不是resp.getWriter)可以省掉一些不变字符数据的编码,提升性能;数据输出时,推荐使用JSON而不是模板引擎(一般都是解释执行)来输出页面。

同一商品被大并发读的问题

也许有读者会觉得这个问题很容易解决,无非就是将热点数据放到Tair缓存里。集中式Tair缓存为了保证命中率一般都会采用一致性Hash,所以同一个key会落到同台机器上。虽然单台Tair缓存机器也能支撑1秒30万次的请求,但还是远不足以应付大秒级别的热点商品,该如何彻底解决单点的瓶颈呢?答案是采用应用层的Localcache,即在秒杀系统的单机上缓存商品相关的数据。那么如何Cache数据?答案是划分成动态数据和静态数据分别处理。像商品的标题和描述这此机器上、并一直缓存到秒杀结束像库存这类动态数据会采用被动失效的方式缓存一定时间(一般是数秒),失效后再去Tai缓存拉取最新的数据。

读者可能还会有疑问,像库存这种频繁更新的数据一旦数据不一致会不会导致超卖?这就要用到读数据的分层校验原则了,读的场景可以允许一定的脏数据,因为这里的误判只会导致少量原本无库存的下单请求被误认为有库存,可以等到真正写数据时再保证最终的一致性,通过在数据的高可用性和一致性之间的平衡来解决高并发的数据读取问题。

同一数据大并发更新问题

采用Localcache和数据的分层校验可以一定程度上解决大并发读问题,但是无论如何还是避免不了减库存这类的大并发写问题,这也是秒杀场景中最核心的技术难题。

同一数据在数据库里肯定是一行存储(MYSQL),所以会有大量的线程来竞争INNODB行锁,并发度越高时等待的线程也会越多,TPS会下降而RT会上升,数据库的吞吐量会严重受到影响。这里会出现一个问题,即单个热点商品会影响整个数据库的性能,出现我们不愿意看到的0.01%商品影响9999的商品的情况。此处的解决思路也是要遵循前面介绍的第一个原则“隔离”把热点商品放到单独的热点库中尽管这会带来维护的麻烦(要做热点数据的动态迁移以及单独的数据库等)把热点商品分离到单独的数据库并没有解决并发锁的问题,要解决并发锁问题有以下两种办法。

第一种是在应用层做排队。按照商品维度设置队列顺序执行,这样能减少同一台机器对数据库同一行记录操作的并发度,也能控制单个商品占用数据库连接的数量防止热点商品占用太多的数据库连接。

第二种是在数据库层做排队。应用层只能做到单机的排队,但是应用层机器数量很多,用这种排队方式控制并发仍然是很有限的,如果能在数据库层做全局排队是最理想的。数据库团队开发了 MYSQL的 INNODB层上的 patch,可以做到在数据库层上对单行记录并发排队。

你可能会有疑问:排队和锁竞争不都是要等吗,有何区别?如果熟悉MYSQL的话,应该知道INNODB内部的死锁检测以及MYSQLServer和INNODB的切换会比较耗性能,MYSQL核心团队还做了很多其他方面的网站制作优化,如COMMIT_ON_SUCCESS和ROLLBACKONFAIL的patch,配合在SQL里面加hint,在事务里不需要等待应用层提交COMMIT而在数据执行完最后一条SQL后,根据TARGETAFFECTROW结果就直接提交或回滚,这样可以减少网络的等待时间(平均约0.7毫秒)。

 

更多网站建设推广资讯,请联系蓝畅客服

 

蓝畅在线客服       

 

关于我们:

Infocode蓝畅信息技术有限公司成功为多家世界财富500强企业以及其他著名品牌提供优质服务,是您靠谱的互联网开发供应商。

服务客户遍及北京、上海、杭州、深圳、广州、天津、青岛、南京、宁波、苏州、无锡、厦门、重庆、西安等大中型城市及地区    为您提供:H5开发,小程序开发,H5外包,微信开发,H5商城开发,小程序商城开发,网站开发外包,H5游戏开发,小程序开发外包,小程序设计、APP开发外包,UI设计,SEO优化,SEO外包,视频后期制作等优质服务

H5游戏开发和网页游戏开发有哪些不同?

本文来自投稿,不代表Infocode蓝畅营销立场,如若转载,请注明出处:https://www.seosetup.cn/1307.html

(0)
上一篇 2022年5月15日 下午11:34
下一篇 2022年5月16日 下午11:03

相关推荐

  • SEO优化公司:SEO优化思维有哪些?

    大多数人在做事情的时候,如果是比较简单的就会很得意或者不屑去做,如果遇到一些比较困难的事情时,就会害怕或者选择退缩。 在搜索引擎优化时也是如此,一般seo人员对网站优化总是轻描淡写…

    2022年4月28日
    1050
  • 定时更新网站文章对网站SEO优化有哪些好处?

    说到SEO优化,很多人首先想到的到的就是优化网站。今天就和大家聊一聊网站优化中应该注意哪些技巧。 网站SEO优化是什么? 网站优化往往是搜索引擎优化,所有的起点实际上都围绕着搜索引…

    2022年3月28日
    940
  • 网站建设公司:移动端网站建设该怎样做呢?

    网站建设公司在进行建设网站的时候,是会考虑好移动端的,网民的不断增加,越来越多的客户是偏向于对移动端的喜爱,移动端网站建设就显得十分重要。 那么移动端网站建设该怎样做呢? 视觉结果…

    2022年5月5日
    780
  • 网站建设对企业有什么重要的意义?

    企业网站建设要通过正确的方式,了解网站的质量美观程度才能影响到网站未来的发展以及规模,需要了解企业发展的模式和意义,保障的核心模式在不断发生变化,通过专业的网站可以更好的进行企业宣…

    2023年2月9日
    110
  • 基础的企业网站建设费用都有哪些?

    对于不了解网站建设费用的网站建设需求者来说,企业网站建设费用是一个很复杂的东西。 如果不了解,可能建站费用成本已经很高了而你还觉得很便宜,被坑了都不知道,也可能明明遇到了服务质量很…

    2022年12月4日
    240
  • 网站升级的目的是什么?

    网站建设完成后,一般每隔一段时间就会进行一次升级。 这是因为互联网技术的不断发展,网站的功能和内容也在不断变化。如果网站不能及时升级,就会落后于市场的发展,无法满足用户的需求。 网…

    2023年1月23日
    400
  • 网站建设完成后,应该如何进行维护?

    网站建设完成后,应该如何进行维护? 1、要做到网站的内容定期更新,保持网站的内容新鲜,这样才能够吸引用户的浏览; 2、网站的运营人员要及时对网站的各种问题进行跟踪和处理,确保网站的…

    2023年2月18日
    120
  • 企业网站建设过程中的主要影响因素

    网站建设公司应该怎样去满足用户的需求,怎么去做好的网站和用户的交互性。如果网站能达到一个很好的交互性,用户是会愿意停留较长时间,从而提高网站的转化率,那怎么去做好这些问题呢? 简洁…

    2022年5月6日
    900