首页 文章 精选 留言 我的

精选列表

搜索[fota升级],共10000篇文章
优秀的个人博客,低调大师

pulsarctl 0.5.0 发布,Apache Pulsar 插件 pulsar-admin 的升级替代

软件介绍 Pulsarctl是StreamNative为Apache Pulsar开发的命令行界面(CLI)。详情请参考:pulsarctl介绍。 Pulsarctl是pulsar-admin的替代工具,用于管理Apache Pulsar中的客户端。 Pulsarctl是基于Pulsar REST API,用Go语言编写的。它为Go开发人员提供API接口和用户友好的命令,从而使其更易于与Pulsar Broker进行交互。 与pulsar-admin相比,Pulsarctl更加用户友好: Pulsarctl统一分区主题和主题命令,并提供清晰详细的输出; 在Pulsarctl中,所有与订阅相关的命令都分组在订阅命令中,而在pulsar-admin中,所有与订阅相关的命令都用作主题的子命令,使用不便; Pulsarctl改进了特殊字符的使用,而在pulsar-admin中,要求用户在shell中输入json-string,用法复杂。 使用方法 Pulsarctl有两种使用方式: 在Go中使用并与Pulsar Broker进行交互。Admin API是由Go开发的。 在命令行中将其用作pulsar-admin。 更新日志 下载地址:https://github.com/streamnative/pulsarctl,0.5.0版本更新了以下功能: 修复set-retention命令 修复启用oauth2身份验证时TLS不起作用的问题 修复失败的测试 改善oauth2的实现 修复在安装过程中复制外挂程式递归的问题 修复错误的context panic 支持pulsarctl的oauth2身份验证 修复使用tls时nil指针

优秀的个人博客,低调大师

全球第一的KV内存数据库即将再度升级!

阿里云 Redis 6.0直播链接 Redis 作为稳居世界排名第一的 KV 内存数据库,同时也是最受欢迎的开源缓存产品,在互联网行业有着非常广泛的应用,是应对高并发,大流量,低延迟业务场景的不二选择。 从11年前,Redis发布第一个版本开始,它便成为数据库领域一颗快速发展的璀璨明星,高性能的数据存取能力、精妙设计无锁化内核设计、实用丰富的数据结构,以及后续高可用、集群等生产环境架构的大力发展使得Redis相较于同期甚至更早期起步的缓存产品得到了最为广泛的使用。 2020年5月2日,Redis 6.0 GA版正式发布,包含多项关键功能和内核架构更新。 2020年5月7日,阿里云全球首发最新版 Redis 6.0云数据库,全面涵盖开源Redis 6.0诸如 RESP3新协议的支持,ACL 管理,多 IO 线程,SSL 加密,客户端缓存,集群代理等多项重大更新。在阿里云,您可以第一时间体验到最新版 Redis 的各项功能,构建高性能、场景丰富的应用系统。 史上最重量级发布 ,Redis 6.0 新功能特性 支持全新的RESP协议:RESP全称为REdis Serialization Protocol,是 Redis 服务端与客户端之间通信的协议,新版RESP3协议表达语义更为丰富,为后续客户端简化实现与客户端缓存的设计做准备。 多 IO 线程:Redis 社区版终于迎来了多 I/O 线程版本,通过 threaded-io 可以设置 IO 线程数(注:该参数不包含 worker 线程),从而提升网络吞吐能力,进而提升整体处理性能。 ACL 管理:Redis 6.0 这次带来了比较完善的 ACL 管理能力,方便客户分账号、命令进行更细粒度的权限管理,安全性及易用性均得到了极大的提升。 SSL 加密:本次发布引入了 SSL 数据链路加密,提升了 Redis 数据传输安全性。在此之前,这项能力已是阿里云Redis的产品标配。 全新字符串命令 STRALGO:本次发布也带来了最长公共子序列命令 STRALGO LCS,可以提供字符串比对能力,在这次新冠疫情下,在病毒 RNA 比对场景下或可以一展身手。 分片集群代理:Redis 终于迎来了官方代理选项,在NoSQL分布式的大背景下,弱化底层集群架构是众多数据库演进的一个大方向,Redis 6.0 之前,集群及非集群两种连接模式给客户的研发设置了非常大的阻碍,新集群版代理可以让客户用一套代码管理集群及非集群架构,降低了客户研发及管理难度。 客户端缓存:本次发布带来了全新的客户端缓存及通知机制,目前还处于初级阶段,需要客户端支持,市面上的开源客户端类库还基本不支持。 极速登场,全球首发云数据库Redis 6.0版本 阿里云 Redis 从 2015 年商用以来,一直是全球领先的云KV内存数据库产品,这个产品背后的研发团队拥有众多顶级Redis社区Commiter,为社区做出了大量卓越的贡献,是国内最强大的Redis团队。 过去的一年,我们将原来服务于集团内部打磨多年、有着上万台规模、访问峰值高达10亿量级的Tair(兼容Redis协议的KV存储)作为Redis增强版输出上云,让广大深度使用Redis的客户共享阿里巴巴技术沉淀的成果。 在Redis 6.0开源版本中,阿里云 Commit 贡献仅次于作者和 Redis Labs(Redis作者所在的商业公司),高居原厂外代码贡献第一名。 本次Redis 6.0的云服务发布,更是仅仅距离社区版 GA 仅仅过去不到一周的时间,是除原厂外(与GA同步上线云服务)全球第一个提供Redis 6.0云服务的厂商,以强大的技术实力成就客户。 全面强大,Redis企业级特性尽在掌握 目前阿里云 Redis 提供社区版及增强版(Tair)两大产品系列,覆盖 4.0 到 6.0 全版本,是全球版本能力及版本覆盖度最为广泛的云 KV 缓存产品。 增强版(Tair)包括性能增强版和混合存储版两个分支。增强版作为企业级Redis产品,有着更为卓越的性能特性、更低成本与更可靠的存储机制和更强大的管控与功能扩展能力,诸多功能设计与性能提升都领先于开源版本和多个世界级云厂商,可以说增强版使得阿里云Redis从跟随者成长为业界标准的引领者。 在性能方面,Tair性能增强版有着单集群高达5000万QPS的记录,提供3倍于社区版Redis 5.0的性能,即使是与最新Redis 6.0(RC版)对比测试也有接近2倍的性能提升,是全球最快的 KV 缓存产品。 最新Redis 6.0引入的多线程思路与阿里云 Redis一年前便推出的性能增强版(Tair)英雄略同。但是由于社区版 I/O 线程并没有各自独立的Eventloop,并发度不够彻底,在连接数越来越多的情况下,社区版6.0的多线程实现与Tair性能上会出现一定差距,后者由于进行了完全的流水线化,性能得到了进一步的提升。 在存储方面,阿里云增强版中的混合存储版引入 SSD 存储介质,在兼容 Redis 协议的基础上,TCO 降低 70%+,最高支持32T的存储规格,是超大规格 KV 数据库的最佳选择。 全新提供的半同步复制选项,避免全量同步抖动的同时也加强了数据可靠性的保障,进一步降低业务设计复杂度和数据风险。 在管控和功能丰富方面,阿里云 Redis社区与增强的各个版本均融合了飞天管控平台技术能力,在平台管控与周边生态上进行了全方位优化,为阿里云客户提供了较之自建Redis服务更为优质的云缓存完整解决方案: 开箱即用:控制台一键购买,极速提供服务,无需多等待更无需关心部署架构及最佳配置问题。 审计日志:全新审计日志系统,提供多维度查询过滤及聚合展示,操作历史一目了然,还可以在关键时刻帮助定位性能问题。 缓存分析:全新缓存分析提供基于 RDB 的多维度 Key 分析报告,提供 Key 容量及数量展示,同时提供按照 Key,前缀的 Top key 降序展示,让您可以尽早掌握大 Key和热点key 可能导致的性能问题,进行针对性改进。 秒级监控:提供 5秒监控粒度,方便客户第一时间掌握实例运行状况。 多种 module(仅增强版):提供 TairString,TairHash,TairDoc 等多种 module 支持,可以轻松实现分布式锁,field 级别 TTL 设置等企业级能力,面向多种应用场景,提升研发效率,创造更多玩法。 结语 过去几年,云数据库的采用率不断上升。据Gartner 预测,到2023年全球3/4的数据库都会跑在云上。阿里云现位居亚太区市场份额第一,在全球云数据库市场份额第三,年增速115%。 阿里云拥有国内最丰富的云数据库产品,目前已有超过40万个数据库迁移到阿里云上,涵盖金融、电信、制造、物流等领域的龙头企业。 在去年国际权威机构Forrester发布的数据库评估报告《The ForresterWave™:Database-As-A-Service,Q2 2019》中,阿里云数据库跻身“强劲表现者”阵营。2018年,阿里云成为首家且唯一一家进入Gartner数据库魔力象限——远见者象限的中国公司。 作为阿里云数据库中重量级的产品,阿里云Redis在阿里集团内部常年服务于淘宝,天猫,高德,菜鸟等核心业务系统,历经各种大促活动的洪峰压力磨练与多种业务场景的广泛应用,是企业级客户上云的放心之选。 阿里云Redis 6.0的全球首发,其良好的社区兼容性、完整的管控能力、性能强大的内核以及功能丰富的扩展能力,为您的在线高吞吐低延迟应用进行全方位的保驾护航! 6月23日15:00-16:00 我们一起见证 Redis 史上最大更新 点击文字预约观看直播Redis 6.0版发布会

优秀的个人博客,低调大师

zuihou-admin-cloud 升级,独立 Schema 的微服务 SaaS 平台

# 更新日志: 1,完善用户中心(修改头像、登录时间、账号信息、修改密码等)相关接口对接 2,完善用户管理的用户信息修改相关接口 3,修复jobs服务启动报错 4,统一jobs服务的logback日志配置 5,完善启动文档&脚本 6,修复文件服务在window系统下返回路径错误的bug 7,发布启动教学视频 # 功能点介绍: 服务注册与调用: 基于Eureka来实现的服务注册与调用,在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。 服务鉴权: 通过JWT的方式来加强服务之间调度的权限验证,保证内部服务的安全性。 负载均衡: 将服务保留的rest进行代理和网关控制,除了平常经常使用的node.js、nginx外,Spring Cloud系列的zuul和rebbion,可以帮我们进行正常的网关管控和负载均衡。其中扩展和借鉴国外项目的扩展基于JWT的Zuul限流插件,方面进行限流。 - 熔断机制: 因为采取了服务的分布,为了避免服务之间的调用“雪崩”,采用了Hystrix的作为熔断器,避免了服务之间的“雪崩”。 监控: 利用Spring Boot Admin 来监控各个独立Service的运行状态;利用turbine来实时查看接口的运行状态和调用频率;通过Zipkin来查看各个服务之间的调用链等。 数据权限: 利用基于Mybatis的DataScopeInterceptor拦截器实现了简单的数据权限 SaaS的无感解决方案: 使用Mybatis拦截器实现对所有SQL的拦截,修改默认的Schema,从而实现多租户数据隔离的目的。 二级缓存: 采用J2Cache操作缓存,第一级缓存使用内存(Caffeine),第二级缓存使用 Redis。 由于大量的缓存读取会导致 L2 的网络成为整个系统的瓶颈,因此 L1 的目标是降低对 L2 的读取次数。 该缓存框架主要用于集群环境中。单机也可使用,用于避免应用重启导致的缓存冷启动后对后端业务的冲击。 优雅的Bean转换: 采用Dozer组件来对 DTO、DO、PO等对象的优化转换 前后端统一表单验证: 严谨的表单验证通常需要 前端+后端同时验证, 但传统的项目,均只能前后端各做一次检验, 后期规则变更,又得前后端同时修改。 故在`hibernate-validator`的基础上封装了`zuihou-validator-starter`起步依赖,提供一个通用接口,可以获取需要校验表单的规则,然后前端使用后端返回的规则, 以后若规则改变,只需要后端修改即可。 防跨站脚本攻击(XSS): 当前用户信息注入器: 在线API: 由于原生swagger-ui某些功能支持不够友好,故采用了国内开源的`swagger-bootstrap-ui`,并制作了stater,方便springboot用户使用。 代码生成器: 基于Mybatis-plus-generator自定义了一套代码生成器, 通过配置数据库字段的注释,自动生成枚举类、数据字典注解、SaveDTO、UpdateDTO、表单验证规则注解、Swagger注解等。 定时任务调度器: 基于xxl-jobs进行了功能增强。(如:指定时间发送任务、执行器和调度器合并项目、多数据源) 汉化 Eureka 注册中心页面: 请切换分支进行查看 大文件/断点/分片续传: 前端采用webupload.js、后端采用NIO实现了大文件断点分片续传,启动Eureka、Zuul、File服务后,直接打开docs/chunkUploadDemo/demo.html即可进行测试。 经测试,本地限制堆栈最大内存128M启动File服务,5分钟内能成功上传4.6G+的大文件,正式服耗时则会受到用户带宽和服务器带宽的影响,时间比较长。 分布式事务: 集成了阿里的分布式事务中间件:seata,以 **高效** 并且对业务 **0侵入** 的方式,解决 微服务 场景下面临的分布式事务问题。 #项目代码地址 微服务后端 代码: [gitee] https://gitee.com/zuihou111/zuihou-admin-cloud /[github] https://github.com/zuihou/zuihou-admin-cloud 租户系统 代码: [gitee] https://gitee.com/zuihou111/zuihou-ui / [github] https://github.com/zuihou/zuihou-ui 开发&运营管理系统 代码: [gitee] https://gitee.com/zuihou111/zuihou-admin-ui / [github] https://github.com/zuihou/zuihou-admin-ui [代码生成器] https://github.com/zuihou/zuihou-generator #演示地址 (演示账号没有写权限,只能查询) [租户系统演示环境] http://tangyh.top:10000/zuihou-ui/ 平台管理员账号/密码: zuihou/zuihou 普通用户账号/密码: test/zuiou [开发&运营平台演示环境] http://tangyh.top:180/zuihou-admin-ui/ 账号/密码: demoAdmin/zuihou

优秀的个人博客,低调大师

JEIM 企业即时通讯全新升级【1.0.1】,沟通更高效!

JEIM1.0.1版本最新发布,本次增加内容: 增加对会话列表的操作: 置顶以及非置顶: 消息免打扰: 免打扰之后若该会话有新的消息,则不会有语音提示; 移除会话 JEIM是基于JEPaaS低代码快速开发平台(JEPaaS链接)而搭建,支持个性化的前端设计,快速解决办公途中的沟通协同问题、缩短企业内部沟通距离、提高企业工作效率。 【适用场景】 主要适用于企业内部沟通,企业内部管理通讯等企业办公场景。 【本次发布内容包括】 好友聊天 群组聊天 通讯录 pc端沟通界面 pc端讨论组沟通界面 手机端讨论组及通讯录 【相关链接】 JEIM详细介绍:点击查看详情 JEIM下载地址:点击下载 JEPaaS低代码快速开发平台详细介绍:点击查看详情 JEPaaS低代码快速开发平台下载地址:点击下载 JEPaaS低代码快速开发平台绿色版下载地址:点击下载

优秀的个人博客,低调大师

wordpress轻量应用服务器升级php版本

注意事项 建议使用默认的环境操作 Wordpress镜像用的是4.8.1这个版本 安装依赖 yum install -y libxml2-devel openssl-devel curl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel xslt libxslt-devel yum update -y curl curl-devel yum remove -y libzip 配置SWAP 如果内存是低于1GB的,则需要配置一下swap,编译过程需要依赖更多内存,内存太低会报错 dd if=/dev/zero of=/swap bs=1M count=2048 mkswap -f /swap swapon /swap 安装libzip PHP7.3要求libzip版本大于0.11,但yum安装版本达不到要求,所以这里手动编译一下,该项不满足报错对应如下:checking for libzip... configure: error: system libzip must be upgraded to version >= 0.11 wget https://nih.at/libzip/libzip-1.2.0.tar.gz tar -zxvf libzip-1.2.0.tar.gz cd libzip-1.2.0 ./configure make && make install 编译好后还需要做一下软连接,否则会提示报错找不到zipconf.h文件 ln -s /usr/local/lib/libzip/include/zipconf.h /usr/local/include 编译安装PHP wget https://www.php.net/distributions/php-7.3.9.tar.gz tar -xvf php-7.3.9.tar.gz cd php-7.3.9 ./configure --prefix=/usr/local/php73 --enable-soap --enable-cgi --with-mysql=/usr/local/mysql --with-mysqli=mysqlnd --with-gd --with-pdo-mysql=mysqlnd --with-zlib --enable-zip --enable-fpm --without-pear --disable-phar --with-openssl --enable-mbstring=all --with-jpeg-dir=/usr --with-png-dir=/usr --with-curl --with-freetype-dir=/usr --enable-gd-native-ttf --with-xsl=/usr --enable-calendar --enable-exif --enable-ftp --with-iconv --enable-bcmath --with-mcrypt=/usr/local/libmcrypt --enable-opcache make && make install 这个编译过程会比较长,编译完成后修改一下配置文件 # 将启动脚本复制到init.d中,${PHP73}对应是源码解压的目录 cp ${PHP73}/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm73 # 给启动脚本加上执行权限 chmod +x /etc/init.d/php-fpm73 # 将默认配置文件复制为.conf文件 cp /usr/local/php73/etc/php-fpm.conf.default ${PHP73_DIR}/etc/php-fpm.conf # 添加pool的配置 cat << EOF > /usr/local/php73/etc/php-fpm.d/www.conf [www] listen = /home/www/logs/php73-fpm.sock listen.mode = 0666 user = www group = www pm = dynamic pm.max_children = 128 pm.start_servers = 5 pm.min_spare_servers = 5 pm.max_spare_servers = 15 pm.max_requests = 300 rlimit_files = 1024 slowlog = /home/www/logs/php73-fpm-slow.log EOF 至此PHP已经编译配置完成,接下来需要修改apache使用新版的php 修改apache 镜像中默认是用的php-fpm,使用的是socket方式的监听,Apache对应配置文件/usr/local/apache/conf/httpd.conf,可以看到其中配置如下 我们只需要修改其中socket的文件路径指向到新版本的PHP就可以了,在/usr/local/php73/etc/php-fpm.d/www.conf有指定,新的配置到/home/www/logs/php73-fpm.sock即可,如图 重启服务 # 停止旧版本的PHP(实际不停止也不影响,停止可以减少一些系统资源占用) /etc/init.d/php-fpm stop # 启动新版PHP-FPM /etc/init.d/php-fpm73 start # 重启apache /etc/init.d/apachectl restart 验证 站点根目录是/home/www/htdocs/,放入phpinfo探针即可检测PHP版本 至此轻量应用服务器wordpress镜像更新PHP版本操作已完成,可以愉快的更新wordpress到新版本了。为了操作更简单,这里总结成了一个脚本,可以复制到主机内一键执行 #!/bin/bash WORKDIR=/tmp/ PHP73_DIR=/usr/local/php73 DEFAULT_SWAP=0 createSwap(){ if [ `cat /proc/meminfo | grep SwapTotal | awk -F " " '{print $2}'` -ne 0 ] then return 0 fi if [ `cat /proc/meminfo | grep MemTotal | awk -F " " '{print $2}'` -le 1048576 ] then echo "Mem lower than 1GB,creating swap..." dd if=/dev/zero of=/swap bs=1M count=2048 mkswap -f /swap swapon /swap && echo "SWAP create success." DEFAULT_SWAP=1 fi } installDependence(){ yum install -y libxml2-devel openssl-devel curl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel xslt libxslt-devel yum update -y curl curl-devel yum remove -y libzip } compileLibzip(){ echo "start install libzip." cd ${WORKDIR} if [ -f libzip-1.2.0.tar.gz ] then rm -rf libzip-1.2.0.tar.gz fi wget https://code.aliyun.com/yh11/download/raw/master/libzip-1.2.0.tar.gz tar -zxvf libzip-1.2.0.tar.gz cd libzip-1.2.0 ./configure make && make install if [ $? -ne 0 ] then echo "libzip install failed." exit 127 fi ln -s /usr/local/lib/libzip/include/zipconf.h /usr/local/include } installPHP(){ echo "Install PHP 7.3" cd ${WORKDIR} if [ -f php-7.3.9.tar.gz ] then rm -rf php-7.3.9.tar.gz fi wget https://code.aliyun.com/yh11/download/raw/master/php-7.3.9.tar.gz tar -xvf php-7.3.9.tar.gz cd php-7.3.9 ./configure --prefix=/usr/local/php73 --enable-soap --enable-cgi --with-mysql=/usr/local/mysql --with-mysqli=mysqlnd --with-gd --with-pdo-mysql=mysqlnd --with-zlib --enable-zip --enable-fpm --without-pear --disable-phar --with-openssl --enable-mbstring=all --with-jpeg-dir=/usr --with-png-dir=/usr --with-curl --with-freetype-dir=/usr --enable-gd-native-ttf --with-xsl=/usr --enable-calendar --enable-exif --enable-ftp --with-iconv --enable-bcmath --with-mcrypt=/usr/local/libmcrypt --enable-opcache make && make install if [ $? -ne 0 ] then echo "PHP install failed." exit 127 fi cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm73 cp ${PHP73_DIR}/etc/php-fpm.conf.default ${PHP73_DIR}/etc/php-fpm.conf chmod +x /etc/init.d/php-fpm73 } createConfig(){ cat << EOF > ${PHP73_DIR}/etc/php-fpm.d/www.conf [www] listen = /home/www/logs/php73-fpm.sock listen.mode = 0666 user = www group = www pm = dynamic pm.max_children = 128 pm.start_servers = 5 pm.min_spare_servers = 5 pm.max_spare_servers = 15 pm.max_requests = 300 rlimit_files = 1024 slowlog = /home/www/logs/php73-fpm-slow.log EOF } modifyApache(){ sed -i 's#ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/home/www/logs/php-fpm.sock|fcgi://127.0.0.1/home/www/htdocs#ProxyPassMatch ^/(.*\\.php(/.*)?)$ unix:/home/www/logs/php73-fpm.sock|fcgi://127.0.0.1/home/www/htdocs#g' /usr/local/apache/conf/httpd.conf } restartService(){ chkconfig php-fpm off chkconfig php-fpm73 on /etc/init.d/php-fpm stop /etc/init.d/php-fpm73 start /etc/init.d/apachectl restart } delSwap(){ if [ ${DEFAULT_SWAP} -eq 1 ] then swapoff /swap rm -rf /swap fi } createSwap installDependence compileLibzip installPHP createConfig modifyApache restartService delSwap

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册