首页 文章 精选 留言 我的

精选列表

搜索[加密工具],共10000篇文章
优秀的个人博客,低调大师

PPOCRLabel 半自动化图形标注工具初体验;

Windows + Anaconda 下载安装Anaconda(Python 3+) conda install pyqt=5 cd ./PPOCRLabel # 将目录切换到PPOCRLabel文件夹下 pyrcc5 -o libs/resources.py resources.qrc python PPOCRLabel.py 按官方文档执行完上述命令 报错1:is 和 is not不能识别,手动替换对应py文件中的 is 为‘==’ is not 替换为 ‘!=’ 报错2: 明明已经安装了,还是报这个错!因为是非专业的python小白,折腾了很久,最后直接 将anaconda3\Lib\site-packages下对应包复制到PPOCRLabel目录下即可!后续还报了个lxml模块找不到的错误,也是同样的解决方法! 效果图如下所示: 下载安装命令 ## CPU版本安装命令 pip install -f https://paddlepaddle.org.cn/pip/oschina/cpu paddlepaddle ## GPU版本安装命令 pip install -f https://paddlepaddle.org.cn/pip/oschina/gpu paddlepaddle-gpu >>访问 PaddlePaddle 官网,了解更多相关内容。

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

BeetlSQL 2.13.8.RELEASE 发布,Java 数据库访问工具

本次修复同BeetlSQL3的修复内容 Spring 集成增加了支持事务超时的设置 修复了一个并发情况下的对数据库元数据操作的Bug <dependency> <groupId>com.ibeetl</groupId> <artifactId>beetlsql</artifactId> <version>2.13.8.RELEASE</version> </dependency> Spring Stater <dependency> <groupId>com.ibeetl</groupId> <artifactId>beetl-framework-starter</artifactId> <version>1.2.38.RELEASE</version> </dependency>

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

esrally测试工具,针对现有集群,自定义track

安装 Python 3.8+ including pip3, git 1.9+ pip3 install esrally 高级配置 esrally configure --advanced-config (可多次执行) Enter the benchmark root directory (default: /home/apps/.rally/benchmarks): Using default value '/home/apps/.rally/benchmarks' Enter your Elasticsearch project directory: (default: /home/apps/.rally/benchmarks/src/elasticsearch): Using default value '/home/apps/.rally/benchmarks/src/elasticsearch' Where should metrics be kept? (1) In memory (simpler but less options for analysis) (2) Elasticsearch (requires a separate ES instance, keeps all raw samples for analysis) (default: 1): 2 Enter the host name of the ES metrics store (default: localhost): Using default value 'localhost' Enter the port of the ES metrics store: 9200 Use secure connection (True, False) (default: False): Username for basic authentication (empty if not needed) (default: ): Password for basic authentication (empty if not needed) (default: ): Enter a descriptive name for this benchmark environment (ASCII, no spaces) (default: local): rally_demo Do you want Rally to keep the Elasticsearch benchmark candidate installation including the index (will use several GB per trial run)? (default: False): Configuration successfully written to /home/apps/.rally/rally.ini. Happy benchmarking! rally-metrics-*:记录race中所有的采样数据(性能报告数据都是基于采样数据汇总得出的结果),可以通过采样数据看到具体抖动情况进行具体分析 rally-results-*:基于上面的采样数据进行详细的数据汇总,针对每个指标进行汇总,可以针对每个指标进行最终的结果展示 rally-races-:把最终性能压测结果(即我们看到的输出数据)展示出来,一个文档就是一次race压测 将测试结果放入开启x_pack集群中需要配置 vim .rally/rally.ini [reporting] #datastore.ssl.verification_mode = none datastore.ssl.certificate_authorities = /home/elasticsearch/client-ca.cer 使用 配置代理下载track export http_proxy=http://proxy.acme.org:8888/ /root/.rally/logs/rally.log将记录 Rally connects via proxy URL [http://proxy.acme.org:3128/] to the Internet (picked up from the environment variable [http_proxy]). esrally list tracks 类似于赛道的意思 nested 嵌套文档 percolator 过滤查询 eventdata geoshape geopoint 地理查询 so geopointshape noaa metricbeat nyc_taxis 高度数据化结构 http_logs pmc 全文搜索 geonames 结构化数据 对现有集群进行基准测试 esrally --track=pmc --target-hosts=10.5.5.10:9243,10.5.5.11:9243,10.5.5.12:9243 --pipeline=benchmark-only --client-options="use_ssl:true,verify_certs:true,basic_auth_user:'elastic',basic_auth_password:'changeme'" --user-tag="intention:baseline_github_1234" --report-file=result.csv --report-format=csv rally可以组成分布式集群,并可以根据配置文件进行测试,因为没有试过,这里不再赘述 esrally list races 对比两场比赛 esrally compare --baseline=0bfd4542-3821-4c79-81a2-0858636068ce --contender=beb154e4-0a05-4f45-ad9f-e34f9a9e51f7 创建track mkdir .rally/benchmarks/data/XXX 获取数据 allCountries.txt 转换为json格式 vim toJSON.py import json cols = (("geonameid", "int", True), ("name", "string", True), ("asciiname", "string", False), ("alternatenames", "string", False), ("latitude", "double", True), ("longitude", "double", True), ("feature_class", "string", False), ("feature_code", "string", False), ("country_code", "string", True), ("cc2", "string", False), ("admin1_code", "string", False), ("admin2_code", "string", False), ("admin3_code", "string", False), ("admin4_code", "string", False), ("population", "long", True), ("elevation", "int", False), ("dem", "string", False), ("timezone", "string", False)) def main(): with open("allCountries.txt", "rt", encoding="UTF-8") as f: for line in f: tup = line.strip().split("\t") record = {} for i in range(len(cols)): name, type, include = cols[i] if tup[i] != "" and include: if type in ("int", "long"): record[name] = int(tup[i]) elif type == "double": record[name] = float(tup[i]) elif type == "string": record[name] = tup[i] print(json.dumps(record, ensure_ascii=False)) if __name__ == "__main__": main() python3 toJSON.py > documents.json 编写track.json 检查是否可用esrally info --track-path=~/rally-tracks/tutorial track解剖 {% set index_count = 2 %} #设置循环次数 { "version": 2, "description": "Tutorial benchmark for Rally", "indices": [ { "name": "geonames", #要操作索引的名称 "body": "index.json" } ], "corpora": [ #此轨道使用的所有文档语料库 { "name": "rally-tutorial", "documents": [ { "source-file": "documents.json", "document-count": 11658903, "uncompressed-bytes": 1544799789 } ] } ], "schedule": [ #具体执行的操作 { "operation": { "operation-type": "delete-index" #操作类型 } }, { "operation": { "operation-type": "create-index" } }, { "operation": { "operation-type": "cluster-health", "request-params": { "wait_for_status": "green" } } }, { "operation": { "operation-type": "bulk", "bulk-size": 5000 }, "warmup-time-period": 120, "clients": 8 }, { "operation": { "operation-type": "force-merge" } }, { "operation": { "name": "query-match-all", "operation-type": "search", "body": { "query": { "match_all": {} } } }, "clients": 8, #发起请求客户端数量 "warmup-iterations": 1000, #预热,不显示在测量结果中 "iterations": 1000, #执行次数 "target-throughput": 100 #尽可能慢地运行任务,target-throughput/clients/s qps } ] } 配置parallel实现并行执行语句 https://esrally.readthedocs.io/en/latest/track.html https://elasticsearch-benchmarks.elastic.co/# https://learnku.com/articles/41047

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

ActionView 1.11.5 发布,更好用的团队敏捷开发工具

ActionView 1.11.5新版本已发布,docker 同步发行,新版本做了以下内容的更新: 1. 问题详细页的显示和关闭增加了滑动效果; 2. wiki 增加了收藏功能; 3. 文档 增加了收藏功能; 4. 修改了版本发布时解决版本移动的问题; 5. 修改了日志访问记录定时清理的问题; 6. 优化了一些小问题; 优势: 支持用户创建项目,项目不仅可引用全局配置方案,也可自定义本地方案,实现了全局配置方案和本地配置方案的完美结合。 各项目不仅可引用系统默认工作流,同时可自定义自己的工作流,工作流的每一步可进行精细控制,确保正确的人在正确的时间执行正确的操作。 支持敏捷开发的看板视图(Kanban和Scrum)。 支持甘特图视图。 简单易用的问题界面配置。 强大的问题筛选功能,可定义自己的过滤器。 完备的权限控制模型,支持给用户组授权。 灵活可定制的消息通知方案。 不仅可查看某个问题的改动记录,还可浏览整个项目的活动日志。 支持用户在问题上添加工作日志。 支持用户针对问题发表评论。 团队成员可分享和查找工作所需的资料文档。 支持基于markdown语法的wiki。 支持各种维度的统计报表。 支持基于LDAP用户的同步和认证。 通过WebHook集成GitHub和GitLab。 使用当前较流行的前后端技术框架,后端:php/laravel, 前端:ReactJS+Redux。 支持Docker安装。 清晰的代码结构,方便进行二次开发。 相关链接 详细介绍:www.actionview.cn 码云:https://gitee.com/actionview/av GitHub:https://github.com/lxerxa/actionview

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

PMD 6.26.0 发布,多语言静态代码自动分析工具

PMD 6.26.0 发布了。PMD 是一个代码分析器,能够帮助发现常见的编程问题,比如未使用的变量、空的 catch 块、不必要的对象创建等等。最初仅支持 Java 代码,目前还可支持 JavaScript、Salesforce.com Apex 和 Visualforce、PLSQL、Apache Velocity、XML 和 XSL 。 这是一个小的更新版本,处理了156 项 commit,关闭了43 项 PR,主要更新内容包括: 新规则: 新的 Java 规则UnusedAssignment(java-bestpractices)查找从未使用过且无用的变量分配。新规则应该被完全取代 DataflowAnomalyAnalysis。 修改的规则: 现在 Java 规则ArrayIsStoredDirectly(java-bestpractices) 默认会忽略私有方法和构造函数,可以通过将新属性设置 allowPrivate为“false”来还原旧行为。 此外修复了一些 bug,并有 API 变更,详情查看更新说明: https://github.com/pmd/pmd/releases/tag/pmd_releases%2F6.26.0

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

ActionView 1.11.4 发布,更好用的团队敏捷开发工具

ActionView 1.11.4新版本已发布,新版本做了以下内容的更新: 增加了Sprint 标题可编辑功能; 丰富了字段类型,增加了最大值、最小值、最大长度的限制; 增加了当前时间段的动态检索; 优化了checkbox的样式; 修复了一些小问题; 优势: 支持用户创建项目,项目不仅可引用全局配置方案,也可自定义本地方案,实现了全局配置方案和本地配置方案的完美结合。 各项目不仅可引用系统默认工作流,同时可自定义自己的工作流,工作流的每一步可进行精细控制,确保正确的人在正确的时间执行正确的操作。 支持敏捷开发的看板视图(Kanban和Scrum)。 支持甘特图视图。 简单易用的问题界面配置。 强大的问题筛选功能,可定义自己的过滤器。 完备的权限控制模型,支持给用户组授权。 灵活可定制的消息通知方案。 不仅可查看某个问题的改动记录,还可浏览整个项目的活动日志。 支持用户在问题上添加工作日志。 支持用户针对问题发表评论。 团队成员可分享和查找工作所需的资料文档。 支持基于markdown语法的wiki。 支持各种维度的统计报表。 支持基于LDAP用户的同步和认证。 通过WebHook集成GitHub和GitLab。 使用当前较流行的前后端技术框架,后端:php/laravel, 前端:ReactJS+Redux。 支持Docker安装。 清晰的代码结构,方便进行二次开发。 相关链接 详细介绍:www.actionview.cn 码云:https://gitee.com/actionview/av GitHub:https://github.com/lxerxa/actionview

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

微服务海量日志怎么处理,推荐你试试这款工具....

云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 背景 在企业级的微服务环境中,跑着成百上千个服务都算是比较小的规模了。在生产环境上,日志扮演着很重要的角色,排查异常需要日志,性能优化需要日志,业务排查需要业务等等。然而在生产上跑着成百上千个服务,每个服务都只会简单的本地化存储,当需要日志协助排查问题时,很难找到日志所在的节点。也很难挖掘业务日志的数据价值。 那么将日志统一输出到一个地方集中管理,然后将日志处理化,把结果输出成运维、研发可用的数据是解决日志管理、协助运维的可行方案,也是企业迫切解决日志的需求。 我们的解决方案 通过上面的需求我们推出了日志监控系统。 日志统一收集、过滤清洗。 生成可视化界面、监控,告警,日志搜索。 功能流程概览 在每个服务节点上埋点,实时采集相关日志。 统一日志收集服务、过滤、清洗日志后生成可视化界面、告警功能。 我们的架构 1、日志文件采集端我们使用filebeat,运维通过我们的后台管理界面化配置,每个机器对应一个filebeat,每个filebeat日志对应的topic可以是一对一、多对一,根据日常的日志量配置不同的策略。 除了采集业务服务日志外,我们还收集了mysql的慢查询日志和错误日志,还有别的第三方服务日志,如:nginx等。最后结合我们的自动化发布平台,自动发布并启动每一个filebeat进程。 2、调用栈、链路、进程监控指标我们使用的代理方式:Elastic APM,这样对于业务侧的程序无需任何改动。对于已经在运营中的业务系统来说,为了加入监控而需要改动代码,那是不可取的,也是无法接受的。Elastic APM可以帮我们收集http接口的调用链路、内部方法调用栈、使用的sql、进程的cpu、内存使用指标等。 可能有人会有疑问,用了Elastic APM,其它日志基本都可以不用采集了。还要用filebeat干嘛?是的,Elastic APM采集的信息确实能帮我们定位80%以上的问题,但是它不是所有的语言都支持的比如:C。 其二、它无法帮你采集你想要的非error日志和所谓的关键日志,比如:某个接口调用时出了错,你想看出错时间点的前后日志;还有打印业务相关方便做分析的日志。 其三、自定义的业务异常,该异常属于非系统异常,属于业务范畴,APM会把这类异常当成系统异常上报,如果你后面对系统异常做告警,那这些异常将会干扰告警的准确度,你也不能去过滤业务异常,因为自定义的业务异常种类也不少。 3、同时我们对agent进行了二开。采集更详细的gc、堆栈、内存、线程信息。 4、服务器采集我们采用普罗米修斯。 5、由于我们是saas服务化,服务N多,很多的服务日志做不到统一规范化,这也跟历史遗留问题有关,一个与业务系统无关的系统去间接或直接地去对接已有的业务系统,为了适配自己而让其更改代码,那是推不动的。牛逼的设计是让自己去兼容别人,把对方当成攻击自己的对象。 很多日志是没有意义的,比如:开发过程中为了方便排查跟踪问题,在if else里打印只是有标志性的日志,代表是走了if代码块还是else代码块。甚至有些服务还打印着debug级别的日志。在成本、资源的有限条件下,所有所有的日志是不现实的,即使资源允许,一年下来将是一比很大的开销。所以我们采用了过滤、清洗、动态调整日志优先级采集等方案。首先把日志全量采集到kafka集群中,设定一个很短的有效期。我们目前设置的是一个小时,一个小时的数据量,我们的资源暂时还能接受。 6、Log Streams是我们的日志过滤、清洗的流处理服务。为什么还要ETL过滤器呢?因为我们的日志服务资源有限,但不对啊,原来的日志分散在各各服务的本地存储介质上也是需要资源的哈。现在我们也只是汇集而已哈,收集上来后,原来在各服务上的资源就可以释放掉日志占用的部分资源了呀。 没错,这样算确实是把原来在各服务上的资源化分到了日志服务资源上来而已,并没有增加资源。不过这只是理论上的,在线上的服务,资源扩大容易,收缩就没那么容易了,实施起来极其困难。所以短时间内是不可能在各服务上使用的日志资源化分到日志服务上来的。这样的话,日志服务的资源就是当前所有服务日志使用资源的量。随存储的时间越长,资源消耗越大。如果解决一个非业务或非解决不可的问题,在短时间内需要投入的成本大于解决当前问题所带来收益的话,我想,在资金有限的情况下,没有哪个领导、公司愿意采纳的方案。 所以从成本上考虑,我们在Log Streams服务引入了过滤器,过滤没有价值的日志数据,从而减少了日志服务使用的资源成本。技术我们采用Kafka Streams作为ETL流处理。通过界面化配置实现动态过滤清洗的规则: 界面化配置日志采集。默认error级别的日志全量采集 以错误时间点为中心,在流处理中开窗,辐射上下可配的N时间点采集非error级别日志,默认只采info级别 每个服务可配100个关键日志,默认关键日志全量采集 在慢sql的基础上,按业务分类配置不同的耗时再次过滤 按业务需求实时统计业务sql,比如:高峰期阶段,统计一小时内同类业务sql的查询频率。可为dba提供优化数据库的依据,如按查询的sql创建索引 高峰时段按业务类型的权重指标、日志等级指标、每个服务在一个时段内日志最大限制量指标、时间段指标等动态清洗过滤日志 根据不同的时间段动态收缩时间窗口 日志索引生成规则:按服务生成的日志文件规则生成对应的index,比如:某个服务日志分为:debug、info、error、xx_keyword,那么生成的索引也是debug、info、error、xx_keyword加日期作后缀。这样做的目的是为研发以原习惯性地去使用日志 7、可视化界面我们主要使用grafana,它支持的众多数据源中,其中就有普罗米修斯和elasticsearch,与普罗米修斯可谓是无缝对接。而kibana我们主要用于apm的可视分析。 日志可视化 【云栖号在线课堂】每天都有产品技术专家分享!课程地址:https://yqh.aliyun.com/zhibo 立即加入社群,与专家面对面,及时了解课程最新动态!【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK 原文发布时间:2020-07-14本文作者: 非洲羚羊本文来自:“互联网架构师”,了解相关信息可以关注“互联网架构师”

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

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

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

用户登录
用户注册