可用方案 (1)利用so库 执行底层的命令 (2)安装Linux层第三方库,使Android系统支持上述命令 (3)dnsjava 这两种方法分别有他们的缺点so库麻烦,并且体积大,而第二种方式需要root 现有网络诊断组件或者方案对比 (1)HttpInfo 比较强大,记录的信息包括 Index信息(域名以及请求时间) Net信息(手机网络信息) Ping信息 Http信息 Host信息 MtuScan信息 网络测速 满足大部分场景,代码公开,只有Android端 (3)LDNetDiagnoService_Android 功能:ping、tcp connect和traceroute Android的实现方案一 : 是通过后台线程执行ping命令的方式模拟traceroute的过程,缺点就是模拟过程较慢,timeout的出现比较频繁 Android的实现方案二: 通过编译开源网络检测库iputilsC代码的方式对 traceroute进行了套接字发送ICMP报文模拟,可以明显提高检测速度;(关于iputils工具原理实现,请参考博文) 这里用的方案2 (3)facebook/network-connection-class
Mongo分库方案两种形式分析: 1. mongo sharding方式: 1.1.
目录 一篇读懂无线充电技术(附方案选型及原理分析) 0.背景 1.无线供电特点 1.1优点: 1.2 缺点 2. : 4.1 IDT无线IC方案 4.2 恩智浦 MW系列无线充电IC方案: 4.3 TI (BQ系列)无线充电方案 4.4 东芝无线IC方案 5. 参考资料 博主热门文章推荐: 一篇读懂无线充电技术(附方案选型及原理分析) 作者:HowieXue 0.背景 现今几乎所有的电子设备,如手机,MP3和笔记本电脑等,进行充电的方式主要是有线电能传输,既一端连接交流电源 utm_source=BAIDU&utm_medium=cpc&utm_term=TI%20%E6%97%A0%E7%BA%BF%20%E5%85%85%E7%94%B5&utm_campaign=APP_BAT_CN_B_M_BatteryMgmt .html http://www.nxp.com/cn/products/power-management/%E6%97%A0%E7%BA%BF%E5%85%85%E7%94%B5ic:WIRCHA_ICS
技术选型 当下互联网行业已经从大鱼吃小鱼演变成快鱼吃慢鱼的时代了,从用户需求转化成企业服务的能力,研发效能的高低对用户需求转化速率起到了至关重要的作用,而API服务的研发效能是当中非常重要的一环。 RAP2 长达1年+未更新维护,开源项目一档超过半年未迭代更新,选择就需要慎重,同时对比阿里对待开源的态度,不能商用大部分是KPI考核项目 如果是JAVA项目,可以采用 YAPI + Swagger 的方案
当然,扯这么多并不是为了让人知难而退,只是让各位朋友在选型的时候有个心理准备,更加谨慎,避免后期返工,节省成本。 以下简单介绍一些关于PCS7项目选型设计相关的注意事项,说简单也不简单吧,内容很多,时间有限,只能蜻蜓点水地过一遍,详细的还得看相关手册,以官方最新资讯为准。 自动化系统的选型与组态以及备件库存和工厂扩展大大得到简化。 带有 CPU 410E Process Automation的 AS 410E 自动化系统对于包含少量过程对象的应用来说,是一种节省成本的替代方案。 关于系统选型的网络结构、系统架构、信号模块等选型相关的内容,请关注剑指工控,将在下一篇文章中再做介绍。 以下为相关参考链接: 这里列举了一些与PCS 7硬件、软件、通讯选型相关的文档。
以下找了几种常用结构的图: 第五,接口模块、信号模块选型 5.2 接口模块 ET200SP HA接口模块 IM 155-6 PN (6DL1155-6AU00-0PM0) 除了查找选型样本,最直截了当的方法是,在组态软件(Simatic Manager/TIA/Tia selection tool)中相应的接口模块下查找所需要的信号模块,这样也避免了兼容性错误。 /simatic-%E8%BF%87%E7%A8%8B%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F-pcs-7-%E5%B7%B2%E5%8F%91%E5%B8%83%E6% 85%B1%E7%94%A8%E5%B7%A5%E5%8E%82%E6%80%BB%E7%BA%BF%E5%92%8C%E7%BB%88%E7%AB%AF%E6%80%BB%E7%BA%BF%EF%BC /document/103140443/simatic-pcs-7-%E8%BF%87%E7%A8%8B%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F-et-200pa-smart
可选MySQL高可用方案 MySQL的各种高可用方案,大多是基于以下几种基础来部署的: 基于主从复制; 基于Galera协议; 基于NDB引擎; 基于中间件/proxy; 基于共享存储; 基于主机高可用 ; 在这些可选项中,最常见的就是基于主从复制的方案,其次是基于Galera的方案,我们重点说说这两种方案。 其余几种方案在生产上用的并不多,我们只简单说下。 基于主从复制的高可用方案 双节点主从 + keepalived/heartbeat 一般来说,中小型规模的时候,采用这种架构是最省事的。 在这个方案里,有几个需要注意的地方: 采用keepalived作为高可用方案时,两个节点最好都设置成BACKUP模式,避免因为意外情况下(比如脑裂)相互抢占导致往两个节点写入相同数据而引发冲突; 把两个节点的 老实说,我没实际用过,但从侧面了解到这种方案生产上用的并不多,可能也有些局限性所致吧; 以DBA们的聪明才智,肯定还有其他我不知道的方案,也欢迎同行们间多多交流。
那今天来聊聊目前大致有哪些可以搭建弱网环境的方案以及各自存在的问题。 以上各方案可根据自己公司的实际情况进行选择。
二、方案选型 上面这个问题是我最近看的一本书《从零开始学架构》里的一个例子,如果你是直接选择1,只能说大家还不到架构师的水平~,因为真实的方案需要考虑一些实际情况和约束条件的,书中举例的团队是这样的: 可运维性 低,运维团队无Kakfa、Scala经验 高,运维对Mysql比较熟悉 高,可以融入运维体系 可靠性 高,开源成熟 高,Mysql存储很成熟 低,最初阶段难以保证 人力投入 低 中 高 即方案选型要从多个角度去考察 :方案3看起来并不高大上,但我们做方案并不是为了追求高大上的东西,要能快速解决业务问题。 三、方案细化 针对方案3,上面只是大概的选型,到具体落地,还有很多工作要做,主要如下: 1、数据库设计 消息怎么存储,可以分2类,一是消息表,一是日志表; 这里还可以考虑不同业务隔离,采用分库分表,即一个大的业务单独一张表 ,可以采用SDK的方案,SDK会轮询各主服务器,将消息写入到相应的主服务器; 5、业务如何读消息 也是采用SDK的方式,服务端通过数据库保存消费者最后读取消息的位置 四、总结 技术选型需要考虑我们当前的一些现状态
先看监控的需求来源,即监控系统可做什么 再跳出监控,从可观测性,看监控与日志、链路间的关系及它们各自的作用 最后介绍开源社区几个有代表性的方案以及它们各自的优缺点,便于你之后做技术选型。 3 解决方案横评 了解业界方案优缺点,对选型有大助。这里主要评价开源方案。 3.1 老代整体方案代表Zabbix 企业级开源解决方案,擅长设备、网络、中间件监控。 Open-Falcon初衷想做大一统方案,来解决这乱局。Open-Falcon架构图: Open-Falcon基于RRDtool做了一个分布式时序存储组件Graph。 容量问题,Prometheus默认只提供单机时序库,集群方案需要依赖其他的时序库。 最后对指标监控领域的多个开源解决方案横评对比,助技术方案选型。针对指标监控的几个开源方案的优缺点比较思维导图: 关注我,紧跟本系列专栏文章,咱们下篇再续!
在写开源项目的时候,想到了要支持多种redis部署方式,于是对于这块的生产环境的架构选型展开调研 一 引擎版本 推荐使用更新的引擎版本以支持更多的特性, Redis 6.0新特性说明 模块系统新增多个API
采用主从(master-replica)模式搭建。主节点提供日常服务访问,备节点提供HA高可用,当主节点发生故障,系统会自动在30秒内切换至备节点,保证业务平稳运行。
本文将先说明上述几种技术分别解决了Redis高可用的什么问题;然后详细介绍Redis的持久化技术,主要是RDB和AOF两种持久化方案;在介绍RDB和AOF方案时,不仅介绍其作用及操作方法,同时介绍持久化实现的一些原理细节及需要注意的问题 最后,介绍在实际使用中,持久化方案的选择,以及经常遇到的问题等。 一、Redis高可用概述 在介绍Redis高可用之前,先说明一下在Redis的语境中高可用的含义。 集群:通过集群,Redis解决了写操作无法负载均衡,以及存储能力受到单机限制的问题,实现了较为完善的高可用方案。 前面介绍了RDB和AOF两种持久化方案的细节,下面介绍RDB和AOF的特点、如何选择持久化方案,以及在持久化过程中常遇到的问题等。 下面分场景来讨论持久化策略的选择,下面的讨论也只是作为参考,实际方案可能更复杂更具多样性。
因为两者的数据存储方案不同,造就了不同的实践用途! 我们上面讲到的缓存服务,其实本质就是将数据存储到内存中;而数据库服务,是将数据写入到磁盘,从磁盘中读取数据。 无论是哪种方案,没有绝对的好与坏,主要还是取决于实际的业务用途。 在项目中如何引入缓存呢? 二、方案介绍 如果使用过缓存的同学,可以很容易想到缓存需要哪些东西,通常我们在使用缓存的时候,比较关注两个地方,第一是内存持久化,第二是支持缓存的数据自动过期清楚。 基于以上的要求,我们向介绍以下几种技术实现方案。 2.1、手写一个缓存服务 对于简单的数据缓存,我们完全可以自行编写一套缓存服务,实现过程如下! 对于本地缓存的技术选型,推荐采用 Caffeine,性能上毫无疑问,遥遥领先。
技术方案(开源方案)选型的考量和方法论我的观点:每个公司的情况不一样,开发人员的能力和语言也不一样,因此方案选型需要根据自身情况而定,没有最好,只有最合适! 技术方案的选择需要团队内部的人员相匹配技术方案的实现是需要团队内部的开发人员来具体实施的,因此一定要考虑团队内的人员具体情况,并且所选择的技术方案需要和团队内部的人员相匹配。 比如当前这个方案技术人员是否接触过、编程语言是否熟悉、技术人员是否能够完全掌握这个方案等。 参照业界标杆选择技术方案(开源方案)业界标杆选择的技术方案,一定是经过他们专业人士对比、选型之后决策得到的,并且经过了他们的大量的线上实际验证的。 * 另外,对于不同业务体量和团队规模的公司,技术选型标准往往是不同的,创业公司的技术选型和 BAT 级别公司的技术选型标准可能完全不同。
技术方案(开源方案)选型的考量和方法论 我的观点:每个公司的情况不一样,开发人员的能力和语言也不一样,因此方案选型需要根据自身情况而定,没有最好,只有最合适! 技术方案的选择需要团队内部的人员相匹配 技术方案的实现是需要团队内部的开发人员来具体实施的,因此一定要考虑团队内的人员具体情况,并且所选择的技术方案需要和团队内部的人员相匹配。 比如当前这个方案技术人员是否接触过、编程语言是否熟悉、技术人员是否能够完全掌握这个方案等。 参照业界标杆选择技术方案(开源方案) 业界标杆选择的技术方案,一定是经过他们专业人士对比、选型之后决策得到的,并且经过了他们的大量的线上实际验证的。 • 另外,对于不同业务体量和团队规模的公司,技术选型标准往往是不同的,创业公司的技术选型和 BAT 级别公司的技术选型标准可能完全不同。
最新技术选型解决方案列表 1 概述 这是一份当前的技术选型方案,针对创业、中小型公司 2 目标 2.1 产品目标 2.1.1 SaaS 2.1.1.1 免安装 2.1.1.2 * • React 16.8.* • React Native 0.59 • Electron 4.1.1 2.2.1.3 服务器和容器稳定版本 • Centos 7. 3.1 数据库选型 3.1.1 MySQL 3.1.1.1 Natural key 和 Surrogate key Surrogate Key不允许修改。 Envoy 3.5.3 Traefik 3.6 API网关选型 3.6.1 Kong 3.6.2 Sentinel 3.7 Service Mesh选型 3.7.1 Scalyr 3.11 追踪调用选型 3.11.1 OpenTracing 3.11.2 Zipkin 3.11.3 Jaeger 3.12 混沌选型 3.12.1
在各行各业数字化转型和上云过程中,公有云厂商也在主动拥抱传统线下环境,在思考各种各样的解决方案使云上能力向边缘(或线下)延伸。 目前网上很少有从技术视角来介绍这几个项目优缺点的文章,本文试着从技术视角,从开源视角来分析这几个项目,希望可以给大家做项目选型时提供一些借鉴。 边缘无轻量化解决方案: 虽然OpenYurt没有修改Kubernets,但是在边缘节点上增加YurtHub和Tunnel Agent组件。目前在最小的1C1G的系统上运行成功,更小规格机器待验证。 边缘计算场景 无设备管理能力:OpenYurt目前没有提供设备管理的相关能力,需要用户以workload形式来运行自己的设备管理解决方案。虽然不算是架构设计的缺点,但是也算是一个边缘场景的不足点。
前言 在往期文章《软件性能测试方案-性能测试准备》介绍了前期性能测试准备的要点,本文主要介绍性能测试工具的选型。 想象下,如果不使用工具进行性能测试会怎么样? 性能测试工具选型参考 1.成本: 工具成本:工具通常分为商业(闭源)和非商业(开源)两种,商业工具通常功能比较强大、收费、可提供售后服务。开源工具通常是免费的、功能有限。
关于对高可用的分级我们暂不做详细的讨论,这里只讨论常用高可用方案的优缺点以及选型。 二、高可用方案 1 、主从或主主半同步复制 使用双节点数据库,搭建单向或者双向的半同步复制。 该方案同样使用双节点架构,但是在原有半同复制的基础上做了功能上的优化,使半同步复制的机制变得更加可靠。 可参考的优化方案如下: 双通道复制 半同步复制由于发生超时后,复制断开,当再次建立起复制时,同时建立两条通道,其中一条半同步复制通道从当前位置开始复制,保证从机知道当前主机执行的进度。 比较常见的方案如下: MySQL Cluster MySQL Cluster是官方集群的部署方案,通过使用NDB存储引擎实时备份冗余数据,实现数据库的高可用性和数据一致性。 期望越来越多优秀的解决方案被提出,MySQL高可用问题也可以被更好的解决。