首页 文章 精选 留言 我的

精选列表

搜索[AI替代],共10004篇文章
优秀的个人博客,低调大师

替代 mybatis,sagacity-sqltoy-5.2.48 发版

开源地址: github:https://github.com/sagframe/sagacity-sqltoy gitee:https://gitee.com/sagacity/sagacity-sqltoy idea 插件 (可直接在 idea 中检索安装):https://github.com/threefish/sqltoy-idea-plugins sqltoy-lambdahttps://gitee.com/gzghde/sqltoy-plus 基于sqltoy的后台脚手架系统https://gitee.com/momoljw/sss-rbac-admin 更新内容 1、统一字段处理IUnifyFieldsHandler中增加了对createTime、updateTime等时间字段取数据库时间,避免终端时间不一致问题 2、修复@loop() 参数含引号时多增加了一个空白的缺陷 3、为对象保存等sql产生建立缓存机制,避免每次动态组织sql,提升性能 sqltoy 特点介绍: sqltoy 的核心构建思想 sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、updateSaveFetch、updateFetch 等 sqltoy 的缓存翻译,大幅减少表关联简化 sql,让你的查询性能成几何级提升 极致的分页,同样帮助你实现查询的性能大幅提升 快速分页:@fast () 实现先取单页数据然后再关联查询,极大提升速度 分页优化器:page-optimize 让分页查询由两次变成 1.3~1.5 次 (用缓存实现相同查询条件的总记录数量在一定周期内无需重复查询 sqltoy 的分页取总记录的过程不是简单的 select count (1) from (原始 sql);而是智能判断是否变成:select count (1) from 'from 后语句 ', 并自动剔除最外层的 order by sqltoy 支持并行查询:parallel="true",同时查询总记录数和单页数据,大幅提升性能 便利的跨数据库统计计算:数据旋转 便利的跨数据库统计计算:无限极分组统计 (含汇总求平均) 便利的跨数据库统计计算:同比环比

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

OpenSearch 2.7.0 发布,ElasticSearch 的替代品

OpenSearch 2.7.0 已准备好下载!最新版本的 OpenSearch 为搜索、分析、可观测性和安全性应用程序提供了一系列新功能,并对管理和可用性进行了重大增强。此版本还标志着之前作为实验性发布的几个主要功能的正式发布 — 我们希望您和我们一样渴望将段复制、可搜索快照等功能投入生产!完整的改进记录请看发行说明,您可以在Playground上探索 OpenSearch 的可视化工具。 通过可搜索快照大规模提高效率 可搜索快照在 OpenSearch 2.4.0 中作为实验性引入,允许您实时搜索作为快照存储在远程存储库中的索引,而无需提前将整组索引数据下载到群集存储。现在,可搜索快照已做好生产准备,在性能、稳定性和管理方面具有许多增强功能(如此处所示),可帮助您利用远程存储选项,同时节省时间并节省存储容量。在此版本中,项目存储路线图的第二阶段现已正式发布。 通过分段复制增强性能 随着分段复制的正式发布,用户可以选择另一种策略来复制其数据,从而有可能提高高引入工作负载的性能。段复制将 Lucene 段文件从主分片复制到其副本。Lucene 的一次性写入分段架构意味着只需要复制新的分段文件,从而以增加网络利用率和刷新时间为代价,提供更高的索引吞吐量和更低的资源利用率。您现在可以在段复制和文档复制之间进行选择;每当在索引中添加、删除或更新文档时,文档复制都会对主分片和每个副本并行执行相同的索引操作。段复制在 OpenSearch 2.3.0 中作为实验性发布,在接近正式发布时收到了许多贡献,如此处的项目所示。 可视化和探索来自多个来源的数据 同样准备投入生产的还有对 OpenSearch 仪表板中多个数据源的支持。现在,您可以跨多个 OpenSearch 集群动态管理数据源,基于这些源创建索引模式,针对特定数据源运行查询,并将可视化合并到单个仪表板中。此功能在 OpenSearch 2.4.0 中作为实验性功能推出,在准备版本 2.7.0 时获得了功能,如本期所述,包括与开发工具控制台的集成和多项可用性增强功能。 减少大量字段的扁平对象的开销 复杂的 JSON 对象通常包含大量子字段。随着索引的增长,映射每个字段所需的开销可能会消耗过多的存储和内存,这可能会导致“映射爆炸”,从而影响集群的性能和弹性。使用新的平面对象字段类型,您可以选择将复杂的 JSON 对象存储在索引中,而无需单独为所有字段编制索引。通过定义平面对象,您可以选择存储对象及其中的所有对象,从而避免需要单独索引子字段,同时使用DSL和SQL中的点表示法使这些子字段可作为关键字访问。这意味着您可以调整索引映射到数据,并更好地管理和利用资源。 在 OpenSearch 仪表板中使用可观测性功能 在 2.7.0 中,OpenSearch 延续了将可观测性功能作为 OpenSearch 仪表板中的核心功能集成的趋势。现在,您可以从主菜单轻松访问可观测性功能,从仪表板中创建和选择可观测性仪表板,并将事件分析可视化 (PPL) 添加到 OpenSearch 仪表板中的新仪表板或现有仪表板。只需从 OpenSearch 仪表板中创建一个新仪表板,即可查看可观测性仪表板作为选项,或将您喜欢的事件分析 PPL 可视化添加到现有仪表板中。有关此功能的详细信息,请参阅文档。 使用基于形状的筛选器查询地理空间数据 此版本为 OpenSearch 仪表板中的地理空间工具带来了另一轮增强功能,能够根据地理空间字段类型过滤地理空间数据。在早期版本中,用户可以按文档图层中的非地理空间字段类型过滤文档。现在,您可以通过在地图上的选定区域上绘制矩形或面来过滤数据。这会将过滤器应用于地理空间数据以识别空间关系;您可以使用此功能返回其地理坐标 (geo_point) 或地理形状 (geo_shape) 与查询几何图形相交、包含、位于查询几何图形内或未在查询几何中找到的文档。 查看以当地语言显示的 OpenSearch 地图 在 2.7.0 中,OpenSearch 现在将自动渲染地图,其标签和内容以配置 OpenSearch 实例的语言显示。在早期版本中,地图使用源库提供的语言进行渲染。现在,您可以选择以所选的受支持语言显示地图。在启动时,所选语言将由 OpenSearch 仪表板 YAML 配置文件定义;请留意未来版本中的可选下拉菜单。 使用组件模板简化管理 OpenSearch 2.7.0 通过将组件模板直接添加到 OpenSearch 仪表板的索引管理 UI 中,简化了多个索引模板的管理。过去,由于重复,用户在管理多个索引模板时遇到困难,从而导致集群状态更大。此外,对多个模板进行更改需要对每个模板进行手动更新。组件模板进一步增强了 2.5.0 中引入的索引管理 UI,允许您通过将常用设置、映射和别名抽象到可重用的构建基块中来克服这些挑战。 在 OpenSearch 仪表板中动态配置租赁 OpenSearch 管理员的另一个节省时间的升级是动态租户管理的可用性。OpenSearch 仪表板使用租户作为保存和共享索引模式、可视化效果、仪表板和其他对象的空间,并对用户可以访问租户以及提供的访问级别进行管理控制。在早期版本中,仪表板支持租户创建和映射,而租户配置在 YAML 文件中完成,需要在每个数据节点内进行更改以保持节点之间的一致性,并且需要重新启动仪表板才能生效。在此版本中,管理员可以在仪表板中查看、配置和启用或禁用租户,并实现这些更改,而无需重新启动。 通过热分片识别保持性能 此版本为OpenSearch的性能分析器插件中可用的工具集合带来了热分片识别。热分片比索引中的其他分片消耗更多的计算、内存或网络资源;如果不加以解决,它们可能会导致查询吞吐量降低和索引延迟增加,从而可能影响群集可用性。现在,您可以使用性能分析器的根本原因分析代理来识别集群中的热分片,以便可以缓解它们以提高集群性能。 使用内置关联工具分析安全事件 包含安全事件的日志数据可以跨越多个索引和数据流,可视化连接事件之间的关系可以为安全分析师提供有价值的见解。关联引擎作为实验性功能包含在此版本中,允许您在安全事件数据中定义关联,从而跨不同的日志源(如 DNS、Netflow 和 Active Directory)实现高保真结果,仅举几例。此知识图谱可用于跨多个索引和数据流识别、存储和调用连接的事件数据,以帮助您识别模式并调查受监控基础架构中不同系统之间的关系。与往常一样,建议仅在生产环境之外使用实验性功能。 提高 ML 模型的可用性 实验性机器学习 (ML) 框架在此版本中接收更新,包括用于 ML 模型的新自动重新加载机制。现在,您可以将搜索集群设置为在集群关闭后重新启动或节点重新加入集群时自动重新加载已部署的模型,从而最大限度地减少恢复时间并更快地将 ML 模型恢复到生产中。 探索开放搜索 2.7.0 最新版本的OpenSearch可供下载。您可以在发行说明、文档发行说明和文档中了解有关这些功能的更多信息以及更多内容,OpenSearch Playground是在下载工具之前探索这些工具的好地方。查找即将发布的博客文章,这些文章将更深入地了解 OpenSearch 2.7.0 中包含的新功能。

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

Rocky Linux 8.7 正式 GA,CentOS 替代方案

Rocky Linux 8.7 已正式 GA。Rocky Linux 是一个企业级 Linux 发行版,与 RHEL 完全兼容,由 CentOS 创始人 Gregory Kurtzer 创建和领导,支持 x86_64 和 AArch64 处理器架构。 新版下载地址:https://rockylinux.org/download/ 主要变化 NetworkManager 已 rebase 到 1.40。此版本的 NetworkManager 注释可在此处获得。 新的 module stream 版本包括 node.js 18、mercurial:6.2、maven:3.8 和 ruby​​:3.1。 新的编译器工具集版本包括 GCC 12、LLVM 14.0.6、Rust 1.62 和 Go 1.18。 httpd 中 LimitRequestBody 指令的默认值已从无限制更改为 1GiB,以修复 CVE-2022-29404。 SSSD 现在支持与 Windows Server 2022 的直接集成。 云镜像 官方 Rocky Linux 镜像现已支持在 Oracle 云平台上使用。 所有构建的镜像背后的工件现在都被导出以供开发使用。 通用、EC2 和 Azure 镜像的 LVM 变体现已可用。 升级和迁移教程 Rocky Linux 8 的当前用户使用dnf update通过 PackageKit 及其接口(GNOME 软件等)升级到 8.7。 其他 Enterprise Linux 8 发行版的用户可以通过migrate2rocky迁移脚本升级并迁移到 Rocky Linux 8.7。 详情查看发布公告。

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

Appwrite 1.0 发布,Firebase 开源替代品

Appwrite 是一个基于 Docker 的端到端开发者平台,其容器化的微服务库可应用于网页端、移动端,以及后端。Appwrite 通过视觉化界面极简了从零编写 API 的繁琐过程,在保证软件安全的前提下为开发者创造了一个高效的开发环境。 Appwrite 可以提供给开发者用户验证、外部授权、用户数据读写检索、文件储存、图像处理、云函数计算等多种服务. 特性 增加了在用户界面中查看所有资源的 Parent ID 的用户界面 为 Appwrite 内部服务增加了自动缓存清理功能 增加了 Appwrite 处理导入散列密码的功能,这可以用来从其他系统导入现有的用户数据 在 Appwrite 控制台中, Users现在被重新命名为 Authentication 更多的端点被公开(针对客人),并有适当的速率限制 增加了 Discuz、Podio 和 Etsy OAuth 提供者 功能日志现在可以捕获 stdout 增加了授予客人对文档、文件和执行的写入权限的功能 修复 修正在 Appwrite 控制台重设密码后,你不会被重定向到登录页面 修正了无效的数据可能被载入 Appwrite 控制台 修正了一个使用 MySQL 适配器的用户会遇到全文索引的问题 修复了团队被创建时没有所有者的问题 修正了一个无法通过电话搜索用户的问题 修正了一个未接受的邀请会授予对项目的访问权的问题 重要变化 所有的 Date 值现在都存储为 ISO-8601 而不是 UNIX 时间戳 权限级别和语法已被重新设计 函数变量现在被存储在一个单独的集合中,有自己的 API 端点 在函数中, req.env 已被重命名为 req.variables 异步计算的资源,现在将返回 202 Accepted 状态代码,而不是 200 OK 查询已经得到改进,允许更多的灵活性,并引入了新的端点 复合索引现在更加灵活 createExecution 参数的 async 默认值从 true 改为 false 在函数集合中,字符串属性 status 已被重构为一个 enabled 的布尔属性 Execution 响应模型中的 time 属性已被重命名为 duration,以便与其他响应模型更加一致 更多详情可查看:https://github.com/appwrite/appwrite/releases/tag/1.0.0

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

go-stash —— 高效的 Logstash 替代方案

go-stash 是一个高效的从 Kafka 获取,根据配置的规则进行处理,然后发送到 ElasticSearch 集群的工具。 go-stash 有大概 logstash 5 倍的吞吐性能,并且部署简单,一个可执行文件即可。 安装 cd stash && go build stash.go Quick Start 可执行文件方式 ./stash -f etc/config.yaml docker 方式,确保配置文件路径正确 docker run -d -v `pwd`/etc:/app/etc kevinwan/go-stash config.yaml示例如下: Clusters: - Input: Kafka: Name: go-stash Log: Mode: file Brokers: - "172.16.48.41:9092" - "172.16.48.42:9092" - "172.16.48.43:9092" Topic: ngapplog Group: stash Conns: 3 Consumers: 10 Processors: 60 MinBytes: 1048576 MaxBytes: 10485760 Offset: first Filters: - Action: drop Conditions: - Key: status Value: 503 Type: contains - Key: type Value: "app" Type: match Op: and - Action: remove_field Fields: - message - source - beat - fields - input_type - offset - "@version" - _score - _type - clientip - http_host - request_time Output: ElasticSearch: Hosts: - "http://172.16.188.73:9200" - "http://172.16.188.74:9200" - "http://172.16.188.75:9200" Index: "go-stash-{{yyyy.MM.dd}}" MaxChunkBytes: 5242880 GracePeriod: 10s Compress: false TimeZone: UTC ES性能写入测试 测试环境 stash服务器:3台 4核 8G es服务器: 15台 16核 64G 关键配置 - Input: Conns: 3 Consumers: 10 Processors: 60 MinBytes: 1048576 MaxBytes: 10485760 Filters: - Action: remove_field Fields: - message - source - beat - fields - input_type - offset - request_time Output: Index: "nginx_pro-{{yyyy.MM.d}}" Compress: false MaxChunkBytes: 5242880 TimeZone: UTC 写入速度平均在15W/S以上

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

容器与虚拟机,替代还是融合?

最近一两年来,以容器为代表的云原生技术一直是IT行业最为热门的话题。随着云原生技术的崛起,有企业甚至跳过了IaaS层直接在物理机上部署容器。容器的风头几乎盖过云计算,甚至引发了OpenStack的未来堪忧的说法,容器与虚拟化谁将会是市场主流的话题时常被提起。现在还看不到答案,但市场有些了变化。4月底,红帽在其一年一度的技术大会Red hat Summit 2020上宣布推出OpenShift虚拟化的预览版,支持在容器里部署虚拟机,更早些时候,VMware宣布其最新一代云平台vSphere 7提供原生地管理容器和虚拟机的能力。虽然出发点不同,一个是从容器出发兼容虚机,一个是从虚机出发兼容容器,但殊途同归,两者都能实现容器与虚机的同时管理。现在看起来,容器与虚拟机之间有融合和和平共存之势。 云原生“来势汹汹” 云原生技术的兴起是这几年软件行业比较新的变化之一,它给该行业也带来不小的冲击,或者说带来颠覆也不为过。它让应用程序有了明显的代际之分:传统应用与现代应用,也让越来越多的企业选择了拥抱现代应用。 容器是云原生技术的关键技术,今天微服务、DevOps以及CI/CD等都建立在容器之上。作为一种轻量级的虚拟化技术,相比于虚拟机,容器拥有更高的资源使用效率,因为它并不需要为每个应用分配单独的操作系统,因此实例规模更小、创建和迁移速度也更快。 总体上说,容器有三大核心价值,即敏捷、弹性、可移植性。在敏捷方面,容器能够让软件开发交付效率提升10倍,这意味着这个企业能具备更高的速度去进行快速迭代,以及有更低试错成本帮助企业在经营中赢得先机。在弹性方面,云计算已经利用虚拟化技术带来了一定的弹性可以有效控制成本,而利用容器可以实现秒级弹性扩缩容进一步优化成本,节省达50%以上。而在可移植方面,基于容器可以在不同云环境之间迁移实现无边界的计算。 因此,容器很自然地成为当下最受关注的软件技术之一,特别是随着Kubernetes(K8s)成为容器编排的事实标准,进一步加速了容器的普及。如果说容器为应用的快速开发和弹性奠定了基础,那么K8s就为容器的大规模模式和运维提供了保证。 Gartner曾预测,到2022年全球有75%的企业会使用基于云原生的容器技术构建它们的应用系统。而市场也有了一些迹象,IDC 发布的2019年第一季度公有云市场数据,IaaS市场增速有所减缓,同比增长74.1%;但PaaS市场依然保持高增长,增速为101.9%。各大云提供商也十分热衷于容器技术,AWS、微软Azure、谷歌云、阿里云都推出了容器相关服务,并作为重点市场。 容器与虚拟机之争 容器的普及对虚拟机形成了冲击,也就有了容器与虚拟机之争。容器与虚拟机本质上都属于虚拟化技术,所不同的是两者所在层级不同,容器在操作系统至上,与虚拟机相比少了操作系统,不同容器之间能共享操作系统,因此更轻量,启动更快,效率更好。也正因为如此,与虚拟机相比容器的隔离性要差,安全性不如虚拟机。另一方面,虚拟机应用得更普及,相关工具也更为成熟和完善。 总体而言,容器和虚拟机有着各自的优势,虽然在应用场景上有一些重叠,但主要应用场景还是有区别的。比如,虚拟机更适合当应用程序运行时需要所有操作系统资源和功能的场景,如果需要运行多个这样的应该,使用虚拟机更为合适。相比较而言,容器更适合在更少的服务器上运行更多的应用。大部分情况下大多数企业会同时使用虚拟机和容器。鉴于此,容器和虚拟化应当会在相当长时间内共存,特别是考虑到大多数企业此前已经广泛部署虚拟化技术的现实。 实际上,如何同时管理虚拟化和容器技术就成为企业的一个普遍的需求。作为虚拟化技术的最主要推手VMware很早就做出了反映,此前VMware通过在虚拟化平台上外挂PKS(Pivotal与VMware共同推出的一个K8s平台)来实现虚机与容器的同时管理,但毕竟是外挂,其效率和管理方便性上都有不足。去年的VMworld大会上,VMware发布Tanzu 品牌计划,宣布在虚拟化技术中原生地提供对容器技术的支持。VMware的Tanzu把虚拟机和Kubernetes结合起来,对虚拟机和容器以及物理机统一进行管理,它能实现跨物理机、虚拟机以及内部数据中心、跨多个云来管理应用,从而为工作负载提供一个统一的支撑。 今年3月Tanzu正式亮相,VMware最新一代虚拟化平台vSphere 7对外发布,vSphere 7迎来了近10年很大的变革,VMware对vSphere进行了重构,将K8s嵌入vSphere的控制平面,让它成为一个K8s原生平台,从而原生地支持K8s。这样,那些VMware的传统用户无需在虚拟机和K8s容器环境之间做出选择,从而能自由在vSphere上进行现代应用程序开发和运营,同时继续利用现有的技术、工具和技能组合投资。 另一方面,容器厂商也认识到了虚拟化的客观存在,也在拥抱虚拟化技术,kubevirt 就是基于这个目的推出的。kubevirt是 Red hat 开源的以容器方式运行虚拟机的项目,使用容器的Image Registry去创建虚拟机并提供虚机的生命周期管理。在红帽4月底举行的年度技术大会Red Hat Summit 2020大会上,红帽宣布推出OpenShift 虚拟化的技术预览,OpenShift 虚拟化就源自KubeVirt开源项目。企业可以通过这一功能,在整合了云原生与传统工作负载的OpenShift上开发、部署和管理由虚拟机、容器和无服务器构成的应用。 虽然VMware和红帽的从不同出发点出发,但目的是一样的,而这背后的推动力则是企业的现实需求。对用户而言它们的行动无疑是受欢迎的,因为这能让企业少了后顾之忧,不再需要进行非此即彼的选择,不用纠结容器究竟应该部署在虚拟机还是裸机上,从而可以更灵活支持未来的各种应用。

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

替代 Hystrix,Spring Cloud Alibaba Sentinel 快速入门

提起 Spring Cloud 的限流降级组件,一般首先想到的是 Netflix 的 Hystrix。 不过就在2018年底,Netflix 宣布不再积极开发 Hystrix,该项目将处于维护模式。官方表示 1.5.18 版本的 Hystrix 已经足够稳定,可以满足 Netflix 现有应用的需求,所以接下来其会把焦点转向对于自适应的实现,更多关注对应用程序的实时性能做出响应。对于新应用的熔断需求,将采用其它项目实现,Netflix 推荐了 Resilience4j。 作为 Spring Cloud Netflix 重要套件,Hystrix已经成为保障微服务稳定性的首选应用。其实除了 Netflix 和 Resilience4j,限流降级还有一个新的选择,就是阿里巴巴的Sentinel组件。 一、阿里开源 Sentinel 简介 2018年8月,阿里巴巴宣布将 Sentinel 进行开源,同时推出了结合Dubbo的适配器,捐赠给了Apache Dubbo社区。 1.Sentinel 的历史 2012 年,Sentinel 诞生,主要功能为入口流量控制。2013-2017 年,Sentinel 在阿里巴巴集团内部迅速发展,成为基础技术模块,覆盖了所有的核心场景。Sentinel 也因此积累了大量的流量归整场景以及生产实践。2018 年,Sentinel 开源,并持续演进。 2.Sentinel对主流框架的适配 Sentinel 分为两个部分: 核心库(Java 客户端)不依赖任何框架/库,能够运行于所有 Java 运行时环境,同时对 Dubbo / Spring Cloud 等框架也有较好的支持。控制台(Dashboard)基于 Spring Boot 开发,打包后可以直接运行,不需要额外的 Tomcat 等应用容器。 Sentinel适配目前多种的主流框架,包括Spring Cloud,Dubbo等。Sentinel的开源丰富了阿里巴巴微服务开源体系,对稳定性组件提供了更多的解决方案。 二、Sentinal 解决什么问题 在大规模微服务架构的场景下,避免服务出现雪崩,要减少停机时间,要尽可能的提高服务可用性。限流和降级是一个非常重要的手段,具体实施方法可以归纳为八字箴言,分别是限流,降级,熔断和隔离。Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 限流 限流顾名思义,提前对各个类型的请求设置最高的QPS阈值,若高于设置的阈值则对该请求直接返回,不再调用后续资源。Sentinel提供了两种流量统计方式,一种是统计并发线程数,另外一种则是统计 QPS,当并发线程数超出某个设定的阀值,新的请求会被立即拒绝,当QPS超出某个设定的阀值,系统可以通过直接拒绝、冷启动、匀速器三种方式来应对,从而起流量控制的作用。 熔断降级 如果某个目标服务调用慢或者有大量超时,此时熔断该服务的调用,对于后续调用请求,不在继续调用目标服务,直接返回,快速释放资源。熔断一般需要设置不同的恢复策略,如果目标服务情况好转则恢复调用。服务之间会有相互依赖关系,例如服务A做到了1秒上万个QPS,但这时候服务B并无法满足1秒上万个QPS,那么如何保证服务A在高频调用服务B时,服务B仍能正常工作呢?一种比较常见的情况是,服务A调用服务B时,服务B因无法满足高频调用出现响应时间过长的情况,导致服务A也出现响应过长的情况,进而产生连锁反应影响整个依赖链上的所有应用,这时候就需要熔断和降级的方法。Sentinel通过并发线程数进行限制和响应时间对资源进行降级两种手段来对服务进行熔断或降级。 塑形 通常我们遇到的流量具有随机性、不规则、不受控的特点,但系统的处理能力往往是有限的,我们需要根据系统的处理能力对流量进行塑形,即规则化,从而根据我们的需要来处理流量。下面这张图片对流量整形做了一个很好的演示: Sentinel通过资源的调用关系、运行指标、控制的效果三个维度来对流量进行控制,使用中可以自行灵活组合。 系统负载保护 微服务非常容易出现雪崩效应,需要避免服务宕机这种最危险的情况发生。 防止雪崩,是系统防护中重要的一环。当系统负载较高的时候,如果还持续让请求进入,可能会导致系统崩溃,无法响应。Sentinel 同时提供系统维度的自适应保护能力,在集群环境下,网络负载均衡会把本应这台机器承载的流量转发到其它的机器上去。 三、Sentinel 主要特性 应用场景 Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。 支持实时监控 Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。 适配多种开源组件 Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。 支持SPI ,扩展简单 Sentinel 提供简单易用、完善的 SPI 扩展接口。您可以通过实现扩展接口来快速地定制逻辑。例如定制规则管理、适配动态数据源等。 四、Sentinel 开源生态 Sentinel支持当前的主流微服务开发套件,特别对Dubbo和Spring Cloud 做了比较好的支持,并且作为 Spring Cloud Alibaba套件的重要实现。 五、Sentinel对比Hystrix Hystrix 的关注点在于以 隔离 和 熔断 为主的容错机制,超时或被熔断的调用将会快速失败,并可以提供 fallback 机制。 而 Sentinel 的侧重点在于: 多样化的流量控制 熔断降级 系统负载保护 实时监控和控制台 一图胜前言,对 Sentinel和Hystrix的特性做一个表格来对比。 功能 Sentinel Hystrix resilience4j 隔离策略 信号量隔离(并发线程数限流) 线程池隔离/信号量隔离 信号量隔离 熔断降级策略 基于响应时间、异常比率、异常数 基于异常比率 基于异常比率、响应时间 实时统计实现 滑动窗口(LeapArray) 滑动窗口(基于 RxJava) Ring Bit Buffer 动态规则配置 支持多种数据源 支持多种数据源 有限支持 扩展性 多个扩展点 插件的形式 接口的形式 基于注解的支持 支持 支持 支持 限流 基于 QPS,支持基于调用关系的限流 有限的支持 Rate Limiter 流量整形 支持预热模式、匀速器模式、预热排队模式(流量规则处可配置) 不支持 不支持 系统自适应保护 支持 不支持 不支持 控制台 开箱即用的控制台,可配置规则、查看秒级监控、机器发现 简单的监控查看 不提供控制台,可对接其它监控系统

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

替代SSD?Crossbar进军中国存储市场

阻变式存储器(RRAM)技术的领导者Crossbar公司今日宣布正式进军中国市场,并在上海设立新的办事处。 Crossbar公司首席执行官George Minassian博士表示:“中国是电子行业发展最快的市场,亦是绝大多数产品的制造基地。凭借我们在中国深厚的风投实力和资源、新成立的本地办事处以及行业领先的技术,我们相信将在中国消费电子、企业、移动、工业和物联网等市场掀起新一轮电子创新浪潮。此外,我们近期与中芯国际已达成合作,将我们的嵌入式技术用于中芯国际40nm甚至更高工艺,有望使新的应用开发受益。” 通过集成更大的片上非易失性阻变式存储器(RRAM)到智能卡、机顶盒、IP相机和监视器等一系列应用,Crossbar的客户现正设计并推出低功耗、高安全性的解决方案。 Minassian博士还表示:“物联网和可穿戴设备市场需要节能、安全和低成本的微控制器。Crossbar RRAM技术能提供片上编程和数据存储的嵌入式内存模块,也可单独作为EEPROM内存,将是满足这些需求的理想解决方案。” Crossbar技术首先由中国出生的卢伟(Dr. Wei D. Lu)博士研发,他也是Crossbar的首席科学家和联合创始人。卢博士拥有中国清华大学物理学士学位,以及德克萨斯州莱斯大学物理学博士学位。卢博士在RRAM领域积累了十二年的研究经验,他先作为哈佛大学的博士后研究员,然后被任命为密歇根大学教授从事这项研究。他是纳米结构和设备行业的领先专家,包括基于双端电阻开关设备的高密度内存和逻辑系统、神经元电路、半导体纳米线设备和低维系统中的电子输运。 据了解,Crossbar RRAM技术被广泛视为极有可能取代当前非易失性内存技术的有力竞争者,从而赢得这一价值600亿美元的全球市场。Crossbar技术可在一个200平方毫米的芯片上存储数个TB的数据,能够将海量信息,例如250小时的高清电影,存储在比邮票还小的集成电路上,并进行回放。凭借简单的三层结构,堆叠性和CMOS兼容性,Crossbar能在最新的技术节点下将逻辑和存储集成到单芯片上,实现传统或其他非易失性内存技术无可比拟的存储容量。Crossbar拥有大容量和快速的优势,并将成为下一代企业和数据中心存储系统的理想选择。 作者:佚名 来源:51CTO

资源下载

更多资源
Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

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部分的功能。

用户登录
用户注册