当前位置: 首页 > news >正文

网站建设优化价格北京优化seo排名

网站建设优化价格,北京优化seo排名,深圳模板开发建站,软件技术包括哪些文章目录 1.什么是池化技术2.池化技术的应用一、连接池二、线程池三、内存池 3.池化技术的总结 1.什么是池化技术 池化技术指的是提前准备一些资源#xff0c;在需要时可以重复使用这些预先准备的资源。 在系统开发过程中#xff0c;我们经常会用到池化技术。通俗的讲在需要时可以重复使用这些预先准备的资源。     在系统开发过程中我们经常会用到池化技术。通俗的讲池化技术就是把一些资源预先分配好组织到对象池中之后的业务使用资源从对象池中获取使用完后放回到对象池中。即对象池对资源线程、连接和内存进行管理这样做带来几个明显的好处 1.资源重复使用 减少了资源分配和释放过程中的系统消耗。比如在IO密集型的服务器上并发处理过程中的子线程或子进程的创建和销毁过程带来的系统开销将是难以接受的。所以在业务实现上通常把一些资源预先分配好如线程池数据库连接池Redis连接池HTTP连接池等来减少系统消耗提升系统性能。 2.可以对资源的整体使用做限制。这个好理解相关资源预分配且只在预分配是生成后续不再动态添加从而限制了整个系统对资源的使用上限。类似一个令牌桶的功能。 3.池化技术分配对象池通常会集中分配这样有效避免了碎片化的问题。 2.池化技术的应用 一、连接池 连接池的原理是通过重用现有连接来减少创建新连接的开销提高应用程序访问数据库的效率。如果使用连接池的话每一次创建连接数据库都要经过三次握手在使用完毕后关闭连接需要经过四次握手。这一过程大大影响系统的性能。       连接池技术通常用于数据库连接管理它的核心思想是预先创建一定数量的数据库连接并将这些连接保存在一个“池”中。当应用程序需要访问数据库时它不是直接创建一个新的连接而是从连接池中获取一个已经存在的连接。使用完毕后这个连接不会被关闭而是被释放回连接池以供其他请求重复使用。     1)连接的预创建和缓存连接池启动时会根据配置初始化一定数量的数据库连接并缓存在内存中。     2)连接的分配和回收当应用程序需要数据库连接时连接池会提供一个已经建立好的连接。应用程序使用完毕后连接不会真正关闭而是被归还到连接池中以便再次使用。     3)连接的管理连接池还会负责维护连接的健康状况比如定期检查连接是否有效以及在必要时创建新的连接或淘汰旧的连接。     4)资源的优化利用由于创建新的数据库连接通常伴随着较大的系统开销如网络通信、认证等使用连接池可以显著减少这些开销因为连接可以被多个请求重复使用。     5)性能的提升连接池减少了频繁建立和关闭连接的操作从而降低了延迟提高了应用程序的整体性能。     6)并发的支持连接池通常设计为线程安全的能够支持多线程或多进程环境下的并发访问。     7)灵活性和可配置性连接池的大小即同时保持的最大连接数通常是可配置的可以根据应用程序的需求和数据库的性能来调整。 注意在后端开发中在循环内连接数据库的大大影响数据库性能的即使有足够的连接数依然有可能耗尽连接数。比如在循环语句中进行数据的增删改查操作。 二、线程池 本文将以java中的线程池为例详细介绍线程池的概念和工作原理以及参数设置。以及开发注意事项。     利用池化技术思想来管理和复用线程以提高多任务处理的效率和性能。     线程池是一种资源池它的目的是优化和管理线程的使用避免因为频繁创建和销毁线程而导致的资源浪费和性能开销。 关键执行步骤     1).当任务来了之后判断线程池中实际线程数是否小于核心线程数如果小于就直接创建线程并执行任务。     2).当实际线程数大于核心线程数它会判断任务队列是否已满如果未满直接将任务存放队列即可。     3).判断线程池的实际线程数是否大于最大线程数如果小于最大线程数直接创建线程执行任务实际线程数已经等于最大线程数那么会直接执行拒绝策略。     开发中的注意事项     在开发中请要使用显性定义一个线程也不要在开发使用java中juc包中的方法创建线程必须使用线程池。SpringBoot定义线程池代码如下 Configuration public class ExecutorConfig {private int corePoolSize 5;private int maxPoolSize 50;Beanpublic Executor workAsync() {ThreadPoolTaskExecutor executor new ThreadPoolTaskExecutor();//配置核心线程数executor.setCorePoolSize(corePoolSize);//配置最大线程数executor.setMaxPoolSize(maxPoolSize);//配置队列大小int queueCapacity 2000;executor.setQueueCapacity(queueCapacity);//配置线程池中的线程的名称前缀executor.setThreadNamePrefix(workAsync-);//rejection-policy当pool已经达到max size的时候如何处理新任务CALLER_RUNS不在新线程中执行任务而是由调用者所在的线程来执行executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());executor.initialize();return executor;}} 使用线程时在方法上添加注解即可声明某方法为异步即使用线程池 Async(workAsync)三、内存池 内存池的原理主要是通过预先分配一定量的内存来减少程序运行时申请和释放内存的开销从而提高整体性能。 内存池技术的核心在于它能够有效地管理内存资源。具体来说内存池的原理包括以下几个方面 1、减少内存管理的开销内存池通过一次性申请一大块内存减少了频繁向操作系统申请和释放内存的开销这在程序需要大量小块内存时尤其有效。     2、防止内存碎片内存池通常分配固定大小的内存块这样可以避免因频繁的内存分配和释放导致的内存碎片问题内存碎片会导致内存利用率降低影响程序性能。     3、提高程序性能内存池提供了一种高效的内存分配方式尤其是对于频繁进行内存分配的程序使用内存池可以明显提升运行效率。     4、自定义内存管理机制内存池允许开发者在给定的内存缓冲区上建立自己的内存管理机制根据程序的具体需求来分配和释放内存这可以进一步减少内存管理的开销。 3.池化技术的总结 池化技术是一种资源管理优化策略用于提高应用程序的性能和响应能力。它通过重用那些创建、初始化或销毁成本较高的资源来实现这一目的。
http://www.w-s-a.com/news/547813/

相关文章:

  • 微信网站建设公司费用高端网站建设 炫酷
  • 北京网站假设销售找客户最好的app
  • 做外贸需要关注的网站有什么好处宜州设计公司
  • 公司最近想做个网站怎么办陕西科强建设工程有限公司官方网站
  • 生态城门户网站 建设动态it外包收费
  • 网站项目评价老渔哥网站建设公司
  • 哈尔滨寸金网站建设价格178软文网
  • 一个网站建设的成本网站开发过程及要点
  • 监控视频做直播网站中国建筑人才网下载
  • 网站建设公司华网天下买送活动集团网站设计案例
  • 哪些网站比较容易做哪个网站做中高端衣服
  • 做php网站教程wordpress去水印
  • 深圳微网站建设公司哪家好潍坊专业做网站的公司
  • 网站的弹窗广告怎么做软件开发包括
  • 网站开发人员保密做最优秀的自己演讲视频网站
  • 一般做网站要多少钱怎样选择高性价比的建站公司
  • 免费私人网站建设软件高端网站设计平台高端网站设计企业
  • 响应式网站建设的应用场景怎么申请电商平台
  • 怎么做垂直自营网站游戏咨询网站建设目标是什么
  • 建设网站需要给钱吗建立网站三大基础
  • 金融公司网站 htmlwordpress 防火墙
  • 重庆智能建站模板网站投票系统 js
  • 网站维护的内容和步骤网站做什么内容
  • 万网虚拟主机建网站wordpress协调世界时
  • 微网站建设方式应用大全网站
  • 网站速度测速织梦模板下载
  • 环保网站建设公司排名汉阴网站建设
  • 自己做网站的二维码wordpress用户权限在哪改
  • 网站使用说明书网站建设公司的介绍
  • 推广型网站免费建设网站防盗链设置