Wednesday, June 23, 2021

e-techbytes

e-techbytes


OSCHINA 社区最新专区文章

Posted: 23 Jun 2021 07:00 AM PDT

OSCHINA 社区最新专区文章


同步 怎么就敏感了?

Posted: 23 Jun 2021 05:29 AM PDT

dubbo-go v3 版本 go module 踩坑记

Posted: 28 May 2021 10:27 AM PDT

> 董剑辉 盛傲飞 ## 1. 问题背景 该问题源于我们想对 dubbo-go 的 module path 做一次变更,使用`dubbo.apache.org/dubbo-go/v3` 替换之前的 `github.com/apache/dubbo-go`。 首先,我们做了路径映射,在 dubbo.apache.org 下放置了一个 **dubbogo/v3** 文件,内容如下: ```html Redirecting to pkg.go.dev/dubbo.apac...

Java中的重排序

Posted: 21 Jun 2021 09:01 AM PDT

# 1. 重排序 在执行程序时为了提高性能,编译器和处理器常常会对指令做重排序。重排序分三种类型: 1. 编译器优化的重排序。编译器在不改变单线程程序语义的前提下,可以重新安排语句的执行顺序。 2. 指令级并行的重排序。现代处理器采用了指令级并行技术(Instruction-Level Parallelism, ILP)来将多条指令重叠执行。...

��JVM技术专题-线上解决方案(1) GC问题分析和故障排查规划指南

Posted: 22 Jun 2021 09:32 PM PDT

# 系列目录 - **[🏆JVM技术专题-线上解决方案(1) GC问题分析和故障排查规划指南](https://my.oschina.net/liboware/blog/5086778 "🏆JVM技术专题-线上解决方案(1) GC问题分析和故障排查规划指南")** - [🏆JVM技术专题-线上解决方案(2) 网络问题分析和故障排查规划指南](https://my.oschina.net/liboware/blo...

Spring Boot 2.x基础教程:使用LDAP来管理用户与组织数据

Posted: 19 Jun 2021 09:30 PM PDT

很多时候,我们在做公司系统或产品时,都需要自己创建用户管理体系,这对于开发人员来说并不是什么难事,但是当我们需要维护多个不同系统并且相同用户跨系统使用的情况下,如果每个系统维护自己的用户信息,那么此时用户信息的同步就会变的比较麻烦,对于用户自身来说也会非常困扰,很容易出现不同系统密码不一致啊等情况...

Java并发编程专题系列之深入分析synchronized(分析篇)

Posted: 22 Jun 2021 06:14 AM PDT

# 前提承接 > **针对于之前两篇关于synchronized的文章,主要介绍关于synchronized在字节码中的实现方式和表现形式(同步代码块和同步方法)[Java并发编程专题系列之深入分析synchronized(基础篇)](https://my.oschina.net/liboware/blog/5054980 "Java并发编程专题系列之深入分析synchronized(基础篇)")以及先关针对...

一次性搞清Java中的类加载问题

Posted: 22 Jun 2021 07:04 PM PDT

摘要:很多时候提到类加载,大家总是没法马上回忆起顺序,这篇文章会用一个例子为你把类加载的诸多问题一次性澄清。 本文分享自华为云社区《用1个例子加5个问题,一次性搞清java中的类加载问题【奔跑吧!JAVA】》,原文作者:breakDraw 。 很多时候提到类加载,大家总是没法马上回忆起顺序,这篇文章会用一个例子为你把类...

详解Java中static关键字和final关键字的功能

Posted: 22 Jun 2021 07:29 PM PDT

摘要:static关键字和final关键字是Java语言的核心,深入理解他们的功能非常重要。 本文分享自华为云社区《Java: static关键字与final关键字》,原文作者:唐里 。 static关键字和final关键字是Java语言的核心,深入理解他们的功能非常重要。 静态变量 无论你写了一个多大的程序,都会遇到static关键字,像这样,在main(...

YARN——标签调度

Posted: 22 Jun 2021 08:41 AM PDT

【简介】 hadoop2.7.2开始,yarn在容量调度器的基础上增加了标签调度功能,使用该功能的一个典型场景是:某个任务需要用到gpu资源,而gpu并非在每个节点上都有,通过对节点设置标签,可以使作业任务正确调度到含gpu资源的节点上,确保作业任务正确运行。 本文主要讲解如何正确配置使用标签调度,至于标签调度的一些基本概...

跨域问题(CORS / Access-Control-Allow-Origin)

Posted: 22 Jun 2021 06:37 PM PDT

1、前言 最近在项目中,调用Eureka REST接口时,出现了CORS跨越问题(Cross-origin resource sharing),在此与大家进行分享,避免多走些弯路。 项目前端(http://localhost:9000)通过Ajax方式调用Eureka REST 接口(http://localhost:8761/eureka/apps)时,却没有任何反应,则通过F12查看日志发现出现"Access-Contro...

2.2 Go语言从入门到精通:Go语言变量

Posted: 22 Jun 2021 06:27 PM PDT

变量来源于数学,是计算机语言中能储存计算结果或能表示值的抽象概念。 Go语言是静态类型语言,因此变量(variable)是有明确类型的,编译器也会检查变量类型的正确性。 变量可以通过变量名访问。 Go 语言变量名由字母、数字、下划线组成,其中首个字符不能为数字。 # 1、变量的声明 声明变量的一般形式是使用 `var` 关键...

你就算不会 Web 开发,也能让数据“动”起来的开源项目!

Posted: 22 Jun 2021 05:48 PM PDT

> 本文面向有 Python 基础的小伙伴,有 Web 基础的更好 ![](https://img2020.cnblogs.com/blog/759200/202106/759200-20210622220415170-2129217753.jpg) 作者:HelloGitHub-吱吱 这里是 **HelloGitHub 推出的[《讲解开源项目》](https://github.com/HelloGitHub-Team/Article)系列**,今天要向小伙伴们介绍的是一个能够...

Google 丰富 Jetpack 功能,Android 应用将拥有复杂搜寻功能

Posted: 22 Jun 2021 03:45 PM PDT

Android Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳做法、减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者可将精力集中于真正重要的编码工作。 Google 近日在 Jetpack 中加入了一个名为 AppSearch 的新功能,目前已经率先推出了 Alpha 版本。AppSearch 是一个设备上的搜索库,能...

Python 3.10.0b3 发布

Posted: 22 Jun 2021 03:36 PM PDT

Python 3.10 仍在开发中,3.10.0b3 是计划中的四个测试版中的第三个。测试版的目的是让更多的社区有机会测试新的特性和修复错误,并让他们的项目准备好支持新的版本特性。目前不建议在生产环境中使用该版本。 核心和内置程序: bpo-44409: 修正初始化标记器时产生的标记器错误的位置信息; bpo-44396: 修正标记器在引发未...

LibreOffice 7.2 Beta1 发布,开源办公套件

Posted: 22 Jun 2021 03:31 PM PDT

LibreOffice 质量保证(QA)团队宣布推出了适用于 Linux、MacOS 和 Windows 的 LibreOffice 7.2 Beta1。LibreOffice 7.2 计划于 2021 年 8 月中旬发布,详情可查看发布计划。 LibreOffice 7.2 Beta1 是自 2020 年 11 月底开始开发 7.2 版本以来的第二个预发布版本。自上一个版本 LibreOffice 7.2 Alpha1以来,已有 1163...

Spring Tools 4.11.0 发布,Spring 开发工具

Posted: 22 Jun 2021 03:10 PM PDT

Spring Tools 4.11.0 现已发布。Spring Tools 4 是由 Spring 团队打造的下一代 Spring 开发工具,基本上是从零开始构建,融合了现代技术和开发者工具架构。它在单独的进程中运行,从构建之初就考虑到了性能问题,并且熟悉最新的 Spring 技术,为开发基于 Spring 的企业应用提供世界级支持。同时,全新版本的 Spring Too...

OSCHINA 社区最新软件

Posted: 23 Jun 2021 06:53 AM PDT

OSCHINA 社区最新软件


高性能 RISC-V 处理器 香山

Posted: 22 Jun 2021 08:06 PM PDT

香山是一款开源的高性能 RISC-V 处理器,基于 Chisel 硬件设计语言实现,支持 RV64GC 指令集。 在香山处理器的开发过程中,其团队使用了包括 Chisel、Verilator 等在内的大量开源工具,实现了差分验证、仿真快照、RISC-V 检查点等处理器开发的基础工具,建立起了一套包含设计、实现、验证等在内的基于开源工具的处理器前端敏捷开发流程。 示例视频 香山的架构代号以湖命名。第一版架构代号是"雁栖湖",微架构如下图所示:...

Java 启动器 Jarboot

Posted: 22 Jun 2021 07:29 PM PDT

Jarboot 是一个 Java 进程启动器,可以管理、监控及调试一系列的Java进程。 在测试环境、每日构建的集成环境,可以把一系列编译输出等jar文件放入约定的目录,由Jarboot提供友好的浏览器ui界面和http接口,统一管理它的启动、停止及状态的监控,以及执行命令对目标进程进行调试。 Jarboot 使用Java Agent和ASM技术往目标Java进程注入代码,无业务侵入性,注入的代码仅用于和Jarboot 的服务实现命令交互,部分命令会修改类的字节...

OSCHINA 社区最新专区文章

Posted: 23 Jun 2021 06:50 AM PDT

OSCHINA 社区最新专区文章


Qt 发布 Android 自动驾驶技术预览

Posted: 22 Jun 2021 05:35 PM PDT

Qt 官方发文宣布,其 Qt Android Automotive OS 技术预览 (QAA) 现已发布,并可供所有商业 Qt Device Creation 被许可人使用。 QAA 将 Qt 框架和 UI 工具包与 Android 汽车和 Android 绑定,并提供 Qt IVI 框架集成,以帮助汽车制造商开发基于 Android 的人机界面(HMI)和车载信息娱乐系统(IVI)。根据该文,QAA 的主要...

OSCHINA 社区最新专区文章

Posted: 23 Jun 2021 05:38 AM PDT

OSCHINA 社区最新专区文章


spring boot admin 和 nacos一起使用时,一个服务出现两个监控示例

Posted: 22 Jun 2021 07:33 PM PDT

Spring Boot | 2.4.2 | Spring Cloud | 2020.0.0 | Spring Cloud Alibaba | 2021.1 |

Google 丰富 Jetpack 功能,Android 应用将拥有复杂搜寻功能

Posted: 22 Jun 2021 03:45 PM PDT

Android Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳做法、减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者可将精力集中于真正重要的编码工作。 Google 近日在 Jetpack 中加入了一个名为 AppSearch 的新功能,目前已经率先推出了 Alpha 版本。AppSearch 是一个设备上的搜索库,能...

Drupal 9.2.0 发布,内容管理软件

Posted: 22 Jun 2021 03:40 PM PDT

Drupal 是内容管理软件,Drupal 有很好的标准功能,可靠的性能,以及出色的安全性。但它的与众不同之处在于其灵活性;模块化是其核心功能之一,能够帮助你建立动态网络体验所需要的多功能、结构化的内容。 Drupal 9 的第二个版本有助于让网站更加安全,并且增加了对访客隐私的保护,改进了从 Drupal 7 的迁移工具,增强了...

百度大规模Service Mesh落地实践

Posted: 22 Jun 2021 03:44 AM PDT

导读:百度过去基于 rpc 框架的服务治理存在各种框架能力参差不齐、业务自身服务治理效率低、全局可观测性不足等诸多问题。本文介绍了百度内部落地 service mesh 的实践过程,以基础稳定性能力治理和流量调度治理能力为业务落地点,详细阐述了内部落地的 service mesh 整体技术方案以及一系列关键技术,如性能的极致优化...

『假如我是面试官』RabbitMQ我会这样问

Posted: 21 Jun 2021 11:51 PM PDT

### 1. 为什么你们公司选择RabbitMQ作为消息中间件 在消息队列选型时,我们调研了市场上比较常用ActiveMQ,RabbitMQ,RocketMQ,Kafka。 1. RabbitMQ相对成熟稳定,这是我们选择它最主要的原因。 2. 社区比较活跃,有完善的资料可以参考。 3. Rabbitmq的吞吐量可以达到万级,完全满足我们系统的要求。 4. RabbitMQ是Erl...

OSCHINA 社区最新专区文章

Posted: 23 Jun 2021 05:37 AM PDT

OSCHINA 社区最新专区文章


TypeScript 在开发应用中的实践总结

Posted: 22 Jun 2021 08:41 PM PDT

背景 以前 hybrid app 的移动端开发模式下,H5 和客户端通信的 js sdk 代码使用 js 编写,sdk 方法的说明使用文档输出。对于开发的使用来说,在 IDE 中不能得到友好的参数类型提示。于是我们维护一个类型定义包进行 sdk 方法的类型定义。但这样对于维护 sdk 的同学来说,维护源码的同时需要同步更新类型定义,更新如果不...

如何看待:程序员(研究生学历)感叹学习多年年薪15w,大专生工资35w+?

Posted: 22 Jun 2021 06:25 AM PDT

研究生工资不如专科生? 学历不是影响程序员发展的死穴,如果工作达到了10年,低学历的程序员更加吃香? 6~10年工作经验的专科生平均年薪超过本科生 学历是求职者的敲门砖,不过近几年,学历的影响貌似没有那么严重了,特别是互联网发展起来之后。程序员除了高薪这个特点之外,还有学历要求没有其他行业那么高。那么学习...

OSCHINA 社区最新新闻

Posted: 23 Jun 2021 04:20 AM PDT

OSCHINA 社区最新新闻


OPPO 加入 LF AI & Data 基金会,持续推动可持续生态建设

Posted: 22 Jun 2021 10:43 PM PDT

OPPO将支持人工智能与数据领域的技术发展,与合作伙伴共建一个公平、强大、健康的AI开源生态体系。 2021年6月22日,OPPO正式以理事会白金会员身份加入LF AI & Data基金会。未来,OPPO将与其他高级成员一道,致力于构建领先的全球人工智能与数据开源开放社区,加速人工智能与数据技术的创新发展与实际应用。 LF AI & Data...

国人主导的开源高性能 RISC-V 处理器“香山”来了

Posted: 22 Jun 2021 07:47 PM PDT

昨日在上海举办的首届 RISC-V 中国峰会上,中科院计算所宣布了一款开源的高性能 RISC-V 处理器 —— 香山。 香山是一款开源的高性能 RISC-V 处理器,基于 Chisel 硬件设计语言实现,支持 RV64GC 指令集。在香山处理器的开发过程中,团队使用了包括 Chisel、Verilator 等在内的大量开源工具,实现了差分验证、仿真快照、R...

W3C 发布 Web Neural Network API 工作草案

Posted: 22 Jun 2021 06:09 PM PDT

W3C 发布了 Web Neural Network API(简称为 "WebNN")的公开工作草案。该 JavaScript API 由 W3C 和部分利益相关者开发,作为一种允许通过浏览器进行神经网络推理硬件加速的手段。 W3C 在今年早些时候成立了一个 Web 机器学习工作组 (web machine learning working group)。谷歌和微软是参与该工作组的公司之一,他们希...

华为 Linux 内核贡献者被批评刷 KPI 后续

Posted: 22 Jun 2021 05:36 PM PDT

华为 Linux 内核贡献者 Leizhen 近日在邮件列表回复了此前被批评刷 API 一事。 他在邮件中提到自己过去对内核的主要贡献是优化 ARM64 SMMU 驱动的性能,包括 iova 优化、严格模式优化以及懒模式优化。此外还参与 ARM SoC 驱动的开发。而在时间和精力允许的情况下,他也为 Linux 内核的其他模块进行贡献,尝试找到可以改进...

Qt 发布 Android 自动驾驶技术预览

Posted: 22 Jun 2021 05:35 PM PDT

Qt 官方发文宣布,其 Qt Android Automotive OS 技术预览 (QAA) 现已发布,并可供所有商业 Qt Device Creation 被许可人使用。 QAA 将 Qt 框架和 UI 工具包与 Android 汽车和 Android 绑定,并提供 Qt IVI 框架集成,以帮助汽车制造商开发基于 Android 的人机界面(HMI)和车载信息娱乐系统(IVI)。根据该文,QAA 的主要...

Gitee 新晋 GVP:高性能分布式文件系统 FastCFS

Posted: 22 Jun 2021 04:13 PM PDT

基于块存储的高性能通用分布式文件系统,可以作为数据库(MySQL、PostgresSQL、Oracle 等)以及 k8s 和虚拟机(KVM 等)的后端存储。

每日一博 | 详解 Apache Dubbo 的 SPI 实现机制

Posted: 22 Jun 2021 04:10 PM PDT

SPI 全称为 Service Provider Interface,对应中文为服务发现机制。SPI 类似一种可插拔机制,首先需要定义一个接口或一个约定,然后不同的场景可以对其进行实现,调用方在使用的时候无需过多关注具体的实现细节。

优秀开源项目集合!快来 pick 你心仪的星选集

Posted: 22 Jun 2021 04:08 PM PDT

87份优秀开源项目集合任你挑选~

多租户系统如何设计?

Posted: 22 Jun 2021 04:07 PM PDT

对于多租户系统,目前业界有哪些成熟的方案?

BaGet —— 轻量级 NuGet 和 Symbol 服务器

Posted: 22 Jun 2021 04:04 PM PDT

一个轻量级的 NuGet 和 Symbol 服务器,需要安装 Node.js 环境,支持 Docker 部署

Google 丰富 Jetpack 功能,Android 应用将拥有复杂搜寻功能

Posted: 22 Jun 2021 03:45 PM PDT

Android Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳做法、减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者可将精力集中于真正重要的编码工作。 Google 近日在 Jetpack 中加入了一个名为 AppSearch 的新功能,目前已经率先推出了 Alpha 版本。AppSearch 是一个设备上的搜索库,能...

数据库软件公司 Couchbase 提交 IPO 申请

Posted: 22 Jun 2021 03:43 PM PDT

2021 年的 IPO 热潮还在继续。数据库软件公司 Couchbase 于近日发布了首次公开募股的文件,证实了外界有关其即将上市的报道。 Couchbase 计划在纳斯达克交易所上市。目前,该公司拥有 500多 个客户,包括纳斯达克本身、Expedia Group Inc. 和 Intuit Inc. 等其他公司。PitchBook 数据显示,Couchbase 在 2020 年 5 月获得...

OSCHINA 社区最新讨论话题

Posted: 22 Jun 2021 01:06 PM PDT

OSCHINA 社区最新讨论话题


如何将MySQL数据迁移到PostgreSQL中?

Posted: 15 Jun 2021 07:46 PM PDT

生产环境是MySQL5.6.36,如何将MySQL数据整体迁移到PostgreSQL11中呢?求大神指点

SPSS的验证功能如何淘汰缺失值过多的变量

Posted: 22 Jun 2021 03:35 AM PDT

我们进行统计分析时,一般来说数据都或多或少会有缺失值,对于有缺失值的记录,我们可以填入中位数、众数或平均数进行处理,或者直接作为一个新的特征变量,用哑变量来表示。 但是对于缺失值过多的特征变量,为了保证统计的准确性,我们会不得不把这些特征变量从数据中进行剔除淘汰。下面我会通过IBM SPSS Statistics的验...

sqlserver2016 内连接查询有索引居然table scan

Posted: 22 Jun 2021 02:34 AM PDT

(sql简化过了,所以业务上可能不需要关联,请忽略) 两张表tab_order_info,tab_order_info_goods,tab_order_info中id为主键(非聚集索引),tab_order_info_goods的order_id就是tab_order_info的id,也加了非聚集索引,CODE_TS同样加了非聚集索引。 sql如下: SELECT COUNT (1) AS num FROM tab_order_info_goods t1, ...

请问各位大佬,启动的java进程,日志格式为charset=binary,怎么解决

Posted: 22 Jun 2021 01:49 AM PDT

请问各位大佬,nohup java -Xms512m -Xmx1024m -jar spring.jar > /opt/logs/spring.log 2>&1 &命令启动的java进程,刚开始启动时,spring.log日志文件的格式为text/plain,过一段时间后再查看格式变成了application/octet-stream; charset=binary,这样就导致如果java进程在运行,我通过> spring.log是清空不了日志文件...

原来的编程语言资讯专栏怎么没了?

Posted: 22 Jun 2021 01:29 AM PDT

如题如题如题如题如题如题如题

node.js 使用puppeteer爬虫框架如何设置socks5带账号密码的代理IP?

Posted: 21 Jun 2021 09:15 PM PDT

或者有哪些node.js爬虫框架可以设置这种代理IP? 我用puppeteer爬虫框架设置代理一直连接超时 或报错 设置格式: const browser = await puppeteer.launch({ headless: true, args: [ '--no-sandbox', '--disable-setuid-sandbox', '-–proxy-server=socks5://username:password@ip :port' ] }); 有大佬告知下如何操作吗。...

有开发过博客系统的吗,为了更好的收录设计方案是什么

Posted: 21 Jun 2021 05:44 AM PDT

目的:为了SEO收录更友好 1.采用前后端分离,动态数据js生成,但一篇博客静态页面估计就几个字了,大部分内容都要靠js来生成,而且meta部分也是靠js的,所以预测收录效果不是很好 2.依然采用前后端分离,但为每篇博客自动生成一篇静态页面,所有的内容都包括。缺点,文件多,占用内存会多很多,最主要的是动态内容发生修改...

Recent Questions - Stack Overflow

Posted: 22 Jun 2021 10:54 AM PDT

Recent Questions - Stack Overflow


Should Google analytics tracking ID kept secret or can I embed it into the build

Posted: 22 Jun 2021 10:53 AM PDT

Is it safe to use Google's analytics tracking id in production. I'm assuming it's not a secret and I can do something like:

const location = useLocation();      useEffect(() => {      ReactGA.initialize("UA-MY-GA-ID"); // Analytics tracking ID      ReactGA.ga('send', 'pageview', location.pathname);    }, [location]);  

Google denied update due Remediation for Implicit PendingIntent Vulnerability

Posted: 22 Jun 2021 10:53 AM PDT

When i'm trying to update my app - i got error during review process. Remediation for Implicit PendingIntent Vulnerability - https://support.google.com/faqs/answer/10437428. In my app there is on place, where i'm creating PendingIntent - for Firebase push notifications:

Inside class FCMService extends FirebaseMessagingService

@Override      public void onMessageReceived(@NotNull RemoteMessage remoteMessage) {          super.onMessageReceived(remoteMessage);            Intent intent = new Intent(this, ApplicationActivity.class);          intent.setAction("com.google.firebase.MESSAGING_EVENT");          intent.setPackage(getApplicationContext().getPackageName());            Map<String, String> data = remoteMessage.getData();          for (Map.Entry<String, String> entry : data.entrySet()) {              String value = entry.getValue();              String key = entry.getKey();              if (key.equals(ApplicationActivity.LINK_URL) ||                      key.equals(ApplicationActivity.FLOCKTORY_LINK_URL)) {                  intent.putExtra(ApplicationActivity.FLOCKTORY_LINK_URL, value);                  if (remoteMessage.getNotification() != null && remoteMessage.getNotification().getTitle() != null) {                      intent.putExtra(ApplicationActivity.HMS_PUSH_TITLE, remoteMessage.getNotification().getTitle());                  }              }          }            PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_IMMUTABLE);            RemoteMessage.Notification notification = remoteMessage.getNotification();          NotificationCompat.Builder builder = new NotificationCompat.Builder(this, getString(R.string.channel_id))                  .setSmallIcon(R.drawable.ic_launcher_notification)                  .setColor(getResources().getColor(R.color.colorNotification))                  .setContentTitle(notification == null ? "" : notification.getTitle())                  .setContentText(notification == null ? "" : notification.getBody())                  .setPriority(NotificationCompat.PRIORITY_DEFAULT)                  .setContentIntent(pendingIntent)                  .setAutoCancel(true);            NotificationManagerCompat notificationManager = NotificationManagerCompat.from(this);          notificationManager.notify(new Random(UUID.randomUUID().getLeastSignificantBits()).nextInt(), builder.build());  

In Manifest:

<service              android:name="ru.svyaznoy.shop.domain.FCMService"              android:exported="false">              <intent-filter>                  <action android:name="com.google.firebase.MESSAGING_EVENT" />              </intent-filter>          </service>  

implementation "com.google.firebase:firebase-messaging:22.0.0"

minSdkVersion 24 targetSdkVersion 30

I just cant figure out what's wrong with this code - i pass explicit Intent with all required fields set. My head is blowing - this update is very important. Does anyone had similar issue?

Is there an R function for creating a new dataframe using two columns from existing dataframe?

Posted: 22 Jun 2021 10:53 AM PDT

Let's say I have a dataframe called cupcakes. I have three columns - one called filling, one called cake flavor, and one called sprinkle color. I want to create a new dataframe extracting just the filling and cake flavors where it counts the amount of items with each possible combination (e.g., there are 5 cupcakes I sold where there's cream filling and chocolate cake, so it prints 5 in that cell).

I would like filling to be my rows and cake flavor to be my columns. How do I accomplish this?

I tried converting the columns to a table, but it does not make one variable a column and one a row. This was my code: cakestrim <- as.data.frame(table(cakes$filling,cakes$flavor)).

Any help would be appreciated!

Trouble displaying screen in MouseListener method

Posted: 22 Jun 2021 10:53 AM PDT

I am coding a game in Java. The first screen is the begin screen. On a mouse click, the screen is supposed to switch to a screen that lets you choose a character. Then, the next screen is the first game question. The character choosing screen isn't coming. It is just going to the first question. drawq is the boolean that determines if the question has been drawn. I had initialized it to false in the beginning of my code. Here is my mouselistener method, please help me find a way to get the screen that displays "Choose your character" and the image of the girl.

public void mouseReleased(MouseEvent e) {                  // TODO Auto-generated method stub                  //background image                  g.drawImage(theme.getImage(),0,0,WIDTH,HEIGHT,null);                  //Choosing character screen                  g.drawString("Choose your character", WIDTH-1550, HEIGHT/6);                  g.drawImage(girl.getImage(),WIDTH-1550,HEIGHT/2,237,338,null);                  //switching drawq to false                  drawq=true;                  //draw next question on mouse click                  if(drawq==true) {                       questions[whichquestion].draw(g);                       drawq=false;                       repaint();                  }  

First row of a DF as column names

Posted: 22 Jun 2021 10:53 AM PDT

How I do a make this first row as my column names instead of x1, x2....xn?

Thanks

DataFrame

How can I combine 2 associative arrays with different keys and how to get the result array in the input to give order in PHP?

Posted: 22 Jun 2021 10:52 AM PDT

I have 2 arrays like:

$arr1 =  [230] => Array          (              [itemid] => 230              [name] => test1              [category] => toy              [price] => 10.00          )        [240] => Array          (              [itemid] => 240              [name] => test2              [category] => toy              [price] => 8.00          )       [245] => Array          (              [itemid] => 245              [name] => test3              [category] => pen              [price] => 5.00          )  )  $arr2 =  [220] => Array          (              [itemid] => 220              [name] => test4              [category] => toy              [price] => 20.00          )        [225] => Array          (              [itemid] => 225              [name] => test5              [category] => battery              [price] => 4.00          )       [248] => Array          (              [itemid] => 248              [name] => test6              [category] => book              [price] => 3.00          )       [236] => Array          (              [itemid] => 236              [name] => test7              [category] => pen              [price] => 2.00          )  )  

I need the result like :

$arr3 =  [230] => Array          (              [itemid] => 230              [name] => test1              [category] => toy              [price] => 10.00          )        [240] => Array          (              [itemid] => 240              [name] => test2              [category] => toy              [price] => 8.00          )       [245] => Array          (              [itemid] => 245              [name] => test3              [category] => pen              [price] => 5.00          )      [220] => Array          (              [itemid] => 220              [name] => test4              [category] => toy              [price] => 20.00          )        [225] => Array          (              [itemid] => 225              [name] => test5              [category] => battery              [price] => 4.00          )       [248] => Array          (              [itemid] => 248              [name] => test6              [category] => book              [price] => 3.00          )       [236] => Array          (              [itemid] => 236              [name] => test7              [category] => pen              [price] => 2.00          )  )  

For this I simply using array_merge

 $arr3= $arr1+ $arr2;  

But after that I got the result like:

$arr3 =  [230] => Array          (              [itemid] => 230              [name] => test1              [category] => toy              [price] => 10.00          )        [240] => Array          (              [itemid] => 240              [name] => test2              [category] => toy              [price] => 8.00          )             [220] => Array          (              [itemid] => 220              [name] => test4              [category] => toy              [price] => 20.00          )        [225] => Array          (              [itemid] => 225              [name] => test5              [category] => battery              [price] => 4.00          )       [248] => Array          (              [itemid] => 248              [name] => test6              [category] => book              [price] => 3.00          )         [245] => Array          (              [itemid] => 245              [name] => test3              [category] => pen              [price] => 5.00          )       [236] => Array          (              [itemid] => 236              [name] => test7              [category] => pen              [price] => 2.00          )  )  

My issue is after merging 2 associative arrays with different keys, I got the first array and second array mixed which means I need the result like the first three array elements of the first array, after that 4 array elements of the second array.
Can you anyone help me, please, It will be helpful for me

Node multiple apps in the same folder

Posted: 22 Jun 2021 10:52 AM PDT

Is there any problem doing this :

My app structure

-my_app
-- node_modules
-- server1.js (express server running on port 3000)
-- server2.js (express server running on port 3001)
-- mymodule.js (exports some database functions)
-- package.js (express,mysql depentancies etc.)

Those apps will both use mymodule.js [const module = require('./mymodule)] and will call functions from inside(database requests)
Now if i spawn 2 process node server1.js and node server2.js
is there going to be any conflict/access problem for my 2 apps, or any other problem?

undefined argument passed to a fn in custom react hook

Posted: 22 Jun 2021 10:52 AM PDT

I'm using a custom hook to open a modal which will perform different actions.

To open and close the modal im using the custom hook useSongUtils methods openModal and closeModal:

export const useSongUtils = () => {    const [isEditing, setIsEditing] = useState(false);      const openModal = ({ cellData }) => {      // outputs undefined      console.log('cell data is', cellData);      setIsEditing(true);    };      const closeModal = () => {      setIsEditing(false);    };      return {      closeModal, isEditing, setIsEditing, openModal,    };  };  

And then importing the returned object into my component, where I have a method for a VirtualTable that renders some action links.

The cell data is an id and it is displayed correctly in the optionsRender method (both links work - I get the id). However, the idea is that clicking the Button element, calls the openModal method from usesongUtils and sets isEditing to true. That works.

However I'm also trying to get the cellData arguments in openModal method and it is not working. I'm getting undefined if I try to console.log.

  // SongList.js      const optionsRender = ({ cellData }) => (      <div className='songs-list__options'>        <Link to={`/songs/${cellData}/edit`}>          <Icon name='edit' style={{ margin: '0 .2rem .2rem 0' }} />        </Link>        <a rel='noreferrer' target='_blank' href={`localhost/client/song/${cellData}`}>          <Icon name='play' style={{ margin: '0 .2rem' }} />        </a>        {cellData} // I can see the data!!        // im trying to pass cellData to openModal         <Button size='tiny' className='ui button' fluid icon='setting' circular onClick={() => openModal(cellData)} />      </div>    );      const {      closeModal, isEditing, openModal,    } = useSongUtils();  

Sorting files in bash

Posted: 22 Jun 2021 10:52 AM PDT

I wiil appreciate your help.

I have files:

V0.1__file_a.sql  V0.2__file_b.sql  V0__file_c.sql  V1.1__file_a.sql  V1.2__b.sql  V1.3__c.sql  V1.4__d.sql  V1.5__e.sql  V1.6__f.sql  V1__file_g.sql  

I would like to use sort command to sort them in next way

V0__file_c.sql  V0.1__file_a.sql  V0.2__file_b.sql  V1__file_g.sql  V1.1__file_a.sql  V1.2__b.sql  V1.3__c.sql  V1.4__d.sql  V1.5__e.sql  V1.6__f.sql    

flags -n, -g do not help me with this.

And i seem to broke my brain solving this

Could someone to help with that?

Thanks!

How to create list of n variables?

Posted: 22 Jun 2021 10:52 AM PDT

Number of variables changes depending on game level.

I want to create list of variables in loop, for example if i = 4 I need variables: size1, size2, size3, size4. Creating names is also problematic for me, like how to create sizen variables?

Thank you in advance

JSON data web scraping

Posted: 22 Jun 2021 10:52 AM PDT

I am attempting to scrape Job titles from here.

First page of this site contains 50 job titles. Using requests I have tried to scrape Job Titles from the first page. I am getting only 10 Job titles. I am not able to scrape all the 50 Job titles from the first page. Using the Developertool > network I understood content type is JSON.

from bs4 import BeautifulSoup  import requests  import json    s = requests.Session()    headers = {      'Connection': 'keep-alive',      'Pragma': 'no-cache',      'Cache-Control': 'no-cache',      'sec-ch-ua': '^\\^',      'Accept': 'application/json, text/javascript, */*; q=0.01',      'sec-ch-ua-mobile': '?0',      'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.106 Safari/537.36',      'Origin': 'https://jobs.porsche.com',      'Sec-Fetch-Site': 'same-site',      'Sec-Fetch-Mode': 'cors',      'Sec-Fetch-Dest': 'empty',      'Referer': 'https://jobs.porsche.com/',      'Accept-Language': 'en-US,en;q=0.9',  }    r1 = s.get('https://api-jobs.porsche.com/search/?data=^%^7B^%^22LanguageCode^%^22^%^3A^%^22DE^%^22^%^2C^%^22SearchParameters^%^22^%^3A^%^7B^%^22FirstItem^%^22^%^3A1^%^2C^%^22CountItem^%^22^%^3A50^%^2C^%^22Sort^%^22^%^3A^%^5B^%^7B^%^22Criterion^%^22^%^3A^%^22PublicationStartDate^%^22^%^2C^%^22Direction^%^22^%^3A^%^22DESC^%^22^%^7D^%^5D^%^2C^%^22MatchedObjectDescriptor^%^22^%^3A^%^5B^%^22ID^%^22^%^2C^%^22PositionTitle^%^22^%^2C^%^22PositionURI^%^22^%^2C^%^22PositionLocation.CountryName^%^22^%^2C^%^22PositionLocation.CityName^%^22^%^2C^%^22PositionLocation.Longitude^%^22^%^2C^%^22PositionLocation.Latitude^%^22^%^2C^%^22PositionLocation.PostalCode^%^22^%^2C^%^22PositionLocation.StreetName^%^22^%^2C^%^22PositionLocation.BuildingNumber^%^22^%^2C^%^22PositionLocation.Distance^%^22^%^2C^%^22JobCategory.Name^%^22^%^2C^%^22PublicationStartDate^%^22^%^2C^%^22ParentOrganizationName^%^22^%^2C^%^22ParentOrganization^%^22^%^2C^%^22OrganizationShortName^%^22^%^2C^%^22CareerLevel.Name^%^22^%^2C^%^22JobSector.Name^%^22^%^2C^%^22PositionIndustry.Name^%^22^%^2C^%^22PublicationCode^%^22^%^2C^%^22PublicationChannel.Id^%^22^%^5D^%^7D^%^2C^%^22SearchCriteria^%^22^%^3A^%^5B^%^7B^%^22CriterionName^%^22^%^3A^%^22PublicationChannel.Code^%^22^%^2C^%^22CriterionValue^%^22^%^3A^%^5B^%^2212^%^22^%^5D^%^7D^%^2C^%^7B^%^22CriterionName^%^22^%^3A^%^22PublicationChannel.Code^%^22^%^2C^%^22CriterionValue^%^22^%^3A^%^5B^%^2212^%^22^%^5D^%^7D^%^5D^%^7D', headers=headers).json()    data1 = json.dumps(r1)  print(data1)  d1 = json.loads(data1)  #print(d1.keys)  for x in d1.keys():      print(x)  

Would really appreciate any help on this.

I am unfortunately currently limited to using only requests or another popular python library. Thanks in advance.

getting permission denied publickey when git push from computer to vps server

Posted: 22 Jun 2021 10:53 AM PDT

I'm trying to git push my app's files, from my computer, to a VPS server running on Ubunto.

On my computer(windows 10) I did: git init git add -A git commit -m "......"

On the server(in the app's directory): git init --bare

next did on my computer: git remote add origin fruitos@ and when I try git push or git pull I get Permission denied(publickey) fatal: Could not read from remote repository

I've tried many things so far to solve it but still no solution. any ideas?

The main goal is to upload the app's file straight from my computer(windows) to the vps server(Ubuntu) using the git push command.

Url.Action always add controller name

Posted: 22 Jun 2021 10:53 AM PDT

When I call:

  onclick="window.location = '@Url.Action("images",             String.Empty,new { id = category.CategoryId})';"  

I get:

 https://localhost:44307/Home/images/1  

But I want to get:

 https://localhost:44307/images/1  

without the controller name

Query Help TSQL

Posted: 22 Jun 2021 10:53 AM PDT

create table ProductEmployee  (    ProductID int,    EmployeeName nvarchar(300)  );    insert into ProductEmployee (ProductID, EmployeeName) values  (1, 'E1'),  (2, 'E2'),  (3, 'E3'),  (4, 'E4'),  (5, 'E5')    create table ProductGroup  (    ProductID int,    GroupName nvarchar(30)  );      insert into ProductGroup (ProductID, GroupName) values  (1, 'G1'),  (2, 'G1'),  (3, 'G1'),  (4, 'G2'),  (5, 'G2')    Select * from ProductEmployee    ProductID   EmployeeName  1           E1  2           E2  3           E3  4           E4  5           E5    select * from ProductGroup    ProductID   GroupName  1           G1  2           G1  3           G1  4           G2  5           G2  

Need to Write a query which provide all the Products in the Productgroup of a product associated with an employee. Example - In table ProductEmployee for employee E2 the ProductID related is 2. The GroupName for Productid 2 is G1 in ProductGroup table. so I need all the ProductId associated with Group G1.Please help.

Expected query Result for the above scenario:    Eg : Employee ProductID  GroupName       E2       1          G1       E2       2          G1       E2       3          G1    Expected Result for all records in the table:    Eg : Employee ProductID  GroupName       E1       1          G1       E1       2          G1       E1       3          G1       E2       1          G1       E2       2          G1       E2       3          G1       E3       1          G1       E3       2          G1       E3       3          G1       E4       4          G2       E4       5          G2       E5       4          G2       E5       5          G2  

Laravel Eloquent request to get products with most categories in common

Posted: 22 Jun 2021 10:53 AM PDT

Each Product can have several Category

On each product page, I need to display 10 "related products".

To that end, I would like to create a function on the Product model, that would return other products that have the most Category in common, and that would go like so:

public function related_products()  {    return Product::with('categories')->whereHas('categories',function($query) {      $query->whereIn('id',$this->category_ids);    })->take(10)->get();  }  

But this would only give me the first 10 products that have at least one category in common.

How can I get the 10 products that have the highest number of categories in common in decreasing order?

The closest I got was this in the internal query:

  $query->whereIn('id',$this->category_ids)    ->orderByRaw('COUNT(id) desc');  

Which isn't working.

Strange return in LINQ function c#

Posted: 22 Jun 2021 10:52 AM PDT

Hello I'm trying to get data of the type Datetime from the database but when returns the data it returns some strange ( photo 1 )

int idf = Convert.ToInt32(Iidfilho.Value);                    var IDADE =                      from d in basedados.Pessoa.OfType<Filho>()                      where d.IdPessoa == idf                      select d.DataNascimento;                    label6.Text = Convert.ToString(IDADE);  

enter image description here

enter image description here

Why are primitives not needed for haskell data constructors?

Posted: 22 Jun 2021 10:52 AM PDT

I'm new to haskell prpogramming and learning about the type system and am having trouble grasping what underlies a nullary data constructor..

Take for example the following:

data Color = Red | Green | Blue | Indigo | Violet deriving Show    genColor:: Color  genColor = Red   

From my understanding, Red, Green, Blue.. are nullary data constructors that when used construct a "Color".

What I'm having trouble grasping is, in traditional OOP languages you'd have to specify the primitive underlying the type -- for ex. whether a color is a string, an int, float etc.

In Haskell, the code above runs perfectly fine so why is this not needed? What is the rationale behind structuring the type system like this? Thanks and all help would be appreciated :)

JavaScript why is map not returning all the indexes?

Posted: 22 Jun 2021 10:52 AM PDT

I dont know but this seems like a bug with javascript or it has to be my machine or something this map is not returning all indexes

const words = [];  let array = [      {        id:"h2j3x33",        author:"Zindril",        body:"Glad to help. Hope it helps you clear even faster next reset!",        permalink:"zindi.page",        utc:1624278978,        replies:""      },      {        id:"33",        author:"highperson",        body:"Im a the best!",        permalink:"thebest.com",        utc: 054,        replies: ""      },      {        id:"43",        author:"charizard",        body:"fire burn",        permalink:"dragon.com",        utc:342342,        replies: {id: 324, author: "Ash", body: "Skinny", permalink: "pokemon.com", utc: 1, replies: ""}      }  ]  
words.push(array)  console.log(words)  console.log(words.length) // this says the length is 1 so the index will be 0  
let whyOnlyFor1Obj = words.map((word, idx, arr) => word[idx]) // word[idx] only returns the first object if I try forEach i get undefined  console.log(whyOnlyFor1Obj)   

The funny thing is when I do

let whyOnlyFor1Obj = words.map((word, idx, arr) => word[2]) // or word[1] I get the other Objects   console.log(whyOnlyFor1Obj)   

Is it me or what is wrong with JS on this?

Display dynamic image in VueJs with Laravel

Posted: 22 Jun 2021 10:53 AM PDT

I am trying to display image stored in storage/app/public/images folder with VueJS but somehow the image is not displayed in vue file

 <img v-bind:src="img" />     export default {      data(){      return{          img:'',      };  },     mounted() {          axios.get('/api/image')          .then(res => {              this.img = res.data          })          .catch(error => console.log(error))      },  

The path returned is correct, however the image is not shown.

Kindly help

Excel VBA - Loop a specific column in structured table and get corresponding cells values from other columns

Posted: 22 Jun 2021 10:52 AM PDT

I start using structured table with VBA code, but here I face a problem which I do not manage by myself.
I have a structured table in which I loop through 1 column and need to get values from other columns depending on some criteria:

  • if the cells value is "Finished"
  • then I take 3 dates (dateScheduled, dateRelease and dateReady) from 3 other columns and perform some calculations and tests based on these dates

the problem is that I can get the values of the date columns (they are well formatted and have values in it), so none of the next actions triggered by the first if is working.

Here is part of the whole code of my macro, I hope this is sufficient to figure out what is wrong.

For Each valCell In Range("thisIsMyTable[Task Status]").Cells      If valCell = "Finished" Then          dateScheduled = Range("thisIsMyTable[End Date]").Cells          dateRelease = Range("thisIsMyTable[Release Date]").Cells          dateReady = Range("thisIsMyTable[Date Ready]").Cells          totalFinishCat = totalFinishCat + 1          daysToFinished = daysToFinished + DateDiff("d", dateReady, dateRelease)          If Range("thisIsMyTable[Time Spent]").Cells = "" Then              timeTotalFinished = timeTotalFinished + Range("thisIsMyTable[Time estimate]").Cells + Range("thisIsMyTable[Extra hours]").Cells          Else              timeTotalFinished = timeTotalFinished + Range("thisIsMyTable[Time Spent]").Cells          End If                    If dateRelease >= dateStartReport Then              monthFinished = monthFinished + 1              timeMonthFinished = timeMonthFinished + Range("thisIsMyTable[Time Spent]").Cells              daysToFinishedMonth = daysToFinishedMonth + DateDiff("d", dateReady, dateRelease)              If dateRelease > dateScheduled Then                  afterDue = afterDue + 1                  diff = DateDiff("d", dateScheduled, dateRelease)                  afterDay = afterDay + diff              Else                  beforeDue = beforeDue + 1                  diff = DateDiff("d", dateRelease, dateScheduled)                  beforeDay = beforeDay + diff              End If          End If      End If  Next valCell  

I have tried out by adding .value or .value2 like so:

dateScheduled = Range("thisIsMyTable[End Date]").Cells.value  

or

dateScheduled = Range("thisIsMyTable[End Date]").Cells.value2  

but it does not work better. I have checked by adding .select like so:

dateScheduled = Range("thisIsMyTable[End Date]").Cells.select  

and this will select the entire column, not the cells as I expect. So it appears that my method to just get the cells value is not appropriate.

Any help is welcome

AWS EMR with Task Nodes only for S3/EMRFS-only processing and 1 Core Node

Posted: 22 Jun 2021 10:52 AM PDT

Given that AWS with EMR provide you with their optimized Spark experience, then:

  • If I am planning to only use S3 / EMRFS for both directly reading and directly writing and not using s3DistCP,
    • Why do I need at least 1 Core Node?

My suspicion is that at least 1 Core Node is needed to get around the issue of Spark shuffle files due to yarn dynamic resource allocation being lost in the past when Core Nodes could be deallocated with scaling.

Converting multibyte array to Unicode

Posted: 22 Jun 2021 10:53 AM PDT

I'm creating an FTP downloader using WinInet in a Univeral Windows program with Visual Studio 2019.

Visual Studio 2019 doesn't give an option to change the character set in the properties configuration tab.

I need to convert the following, which is in multibyte format, to Unicode:

CHAR * szHead[] = "Accept: */*\r\n\r\n";  

The overall code comes from a previous older project using a compiler that had multi-byte character set options, and works fine as is. Unfortunately, I need to make this work in a compiler that has Windows Store support, which only has Unicode.

if (!(hConnect = InternetOpenUrlW(hOpen, szUrl, szHead, strlen(szHead), INTERNET_FLAG_DONT_CACHE, 0)))  

I get the following errors:

Error (active)  E0520   initialization with '{...}' expected for aggregate object     Error   C2440   'initializing': cannot convert from 'const wchar_t [16]' to 'LPCTSTR []'      Error   C2664   'size_t strlen(const char *)': cannot convert argument 1 from 'LPCTSTR []' to 'const char *'      

From other research, these errors are arising because the compiler is expecting Unicode but is getting multibyte.

Modify single value in pandas DataFrame with integer row and label column

Posted: 22 Jun 2021 10:53 AM PDT

I want to modify a single value in a DataFrame. The typical suggestion for doing this is to use df.at[] and reference the position as the index label and the column label, or to use df.iat[] and reference the position as the integer row and the integer column. But I want to reference the position as the integer row and the column label.

Assume this DataFrame:

dateindex apples oranges bananas
2021-01-01 14:00:01.384624 1 X 3
2021-01-05 13:43:26.203773 4 5 6
2021-01-31 08:23:29.837238 7 8 9
2021-02-08 10:23:09.095632 0 1 2

I want to change the value "X" to "2". I don't know the exact time; I just know that it's the first row. But I do know that I want to change the "oranges" column.

I want to do something like df.at[0,'oranges'], but I can't do that; I get a KeyError.

The best thing that I can figure out is to do df.at[df.index[0],'oranges'], but that seems so awkward when they've gone out of their way to provide both by-label and by-integer-offset interfaces. Is that the best thing?


code to create DataFrame:

data = [{'apples':1, 'oranges':'X', 'bananas':3},          {'apples':4, 'oranges':5,   'bananas': 6},          {'apples':7, 'oranges':8,   'bananas':9},          {'apples':0, 'oranges':1,   'bananas':2}]  indexes = [pd.to_datetime('2021-01-01 14:00:01.384624'),             pd.to_datetime('2021-01-05 13:43:26.203773'),             pd.to_datetime('2021-01-31 08:23:29.837238'),             pd.to_datetime('2021-02-08 10:23:09.095632')]  idx = pd.Index(indexes, name='dateindex')  df = pd.DataFrame(data, index=idx)  

Modifying the registry value in x32 and x64 in Wix Installer by executing a batch command

Posted: 22 Jun 2021 10:53 AM PDT

I am looking for a way to execute a command in Wix installer that can modify the registry values at the following locations:

  • HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows (32-bit)
  • HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Windows (64-bit)

The name of the Registry Key is as follows:
Name: USERProcessHandleQuota'
Value: 10000

I want to update this value to 15000. I have been able to modify this value using the following PowerShell script:

Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows' -Name 'USERProcessHandleQuota' -Value '15000'  Set-ItemProperty -Path 'HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Windows' -Name 'USERProcessHandleQuota' -Value '15000'  

However, I cannot find a way to execute this PowerShell script directly in the Wix installer. I have also tried to find a way to do the same using the command prompt, but I have been unsuccessful.

I found a way to execute a command directly in Wix as suggested here:

<CustomAction Id="ExecPortOpen" Directory="INSTALLFOLDER" Execute="commit" Impersonate="no" ExeCommand="cmd.exe /c &quot;netsh http add urlacl url=http://+:1234/ user=Everyone&quot;" Return="check" />    <InstallExecuteSequence>       <Custom Action="ExecPortOpen" After="InstallInitialize" />  </InstallExecuteSequence>  

This way, I don't have to include any additional files in the installer. However, I cannot find a command using which I can update the registry values.

Furthermore, I know we can update the registry values as suggested here:

<Component Feature="MainApplication">    <RegistryValue Root="HKLM" Key="SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION" Name="MY_REG_ENTRY" Value="11000" Type="integer" KeyPath="yes"/>  </Component>  

However, this only updates registry at 32-bit location. It does not update at the 64-bit location. If I use the following code to update at 64-bit location, the installer does not build since my application is not 64-bit application. It's a 32-bit application.

<Component Feature="MainApplication" Win64="yes">  

Add signature timestamp after the signing

Posted: 22 Jun 2021 10:52 AM PDT

How to add the timestamp for the signatures for the following case?

A third party signing service, signing the hash of the document and then returns the CMS container. The service also exposes the TSP endpoint. So, what needs to be done in order to add the timestamp for signatures? I'm using iText7 to perform the operations with documents.

how to add sample run mode for package installation

Posted: 22 Jun 2021 10:53 AM PDT

I want to install a package (mypackage-1.0-local.zip) only for local environment. This package should not be installed in any other environments.Same as OOTB 'samplecontent'/'nosamplecontent' runmodes. So for this I do not know how to achieve this. If I start AEM server with 'local' runmode then how package manager service will know whether to install this package or not based on runmode?

MacOS update raised EXC_BAD_ACCESS (SIGSEGV)

Posted: 22 Jun 2021 10:53 AM PDT

I'm developing an react-native application on M1 Mac.

I recently updated my mac os to beta version Monterey(version 12.0 beta)

After installing the beta version of the mac os i also installed the Xcode(13.0 beta)

Now my app is installed to the iPad simulator but when i open the app, i get the following error.

error log

Can someone help me.

Thanks in advance!

How do I deep clone an object in React?

Posted: 22 Jun 2021 10:52 AM PDT

let oldMessages = Object.assign({}, this.state.messages);  // this.state.messages[0].id = 718    console.log(oldMessages[0].id);  // Prints 718    oldMessages[0].id = 123;    console.log(this.state.messages[0].id);  // Prints 123  

How can I prevent oldMessages to be a reference, I want to change the value of oldMessages without changing the value of state.messages

Draw an ASCII diamond in a frame

Posted: 22 Jun 2021 10:53 AM PDT

I am trying to draw out a diamond in a frame. I figured my way through the top half, but when I come to the 2nd half I had attempted to invert the loops and problems came up. I played around switching operators just to see the result, but still nothing works. Please help. What am I not seeing.

// 1st Half of Diamond    // Creates Lines  for (int i = 1; i <= 3; i++) {      if (i == 1) {          System.out.print("+");          for (int h = 1; h <= 8; h++) {              System.out.print("-");          }          System.out.print("+" + "\n");      }      System.out.print("|");        // Nested Loop Creates Spaces Left Side      for (int j = 4; j > i; j--) {          System.out.print(" ");      }      System.out.print("/");        // Nested Loop Creates Values Inside      for (int j = 1; j < i; j++) {          if (i % 2 == 0) {              System.out.print("--");          } else if (i == 1) {              System.out.print("\\");          } else {              System.out.print("==");          }      }      System.out.print("\\");        // Nested Loop Creates Spaces Right Side      for (int j = 4; j > i; j--) {          System.out.print(" ");      }      System.out.print("|");      System.out.print("\n");  }    // Midpoint of Diamond  System.out.print("|<------>|" + "\n");    //============================  //****HERE PROBLEMS ARISE****    // 2nd Half of Diamond    // Creates Lines  for (int i = 1; i <= 3; i++) {      System.out.print("|");        // Nested Loop Creates Spaces Left Side      for (int j = 1; j <= i; j++) {          System.out.print(" ");      }      System.out.println("\\");        // Nested Loop Creates Values Inside      for (int j = 1; j < 2; j++) {          System.out.print("+");          for (int h = 1; h <= 8; h++) {              System.out.print("-");          }          System.out.print("+" + "\n");          if (i % 2 == 0) {              System.out.print("-");          } else if (i == 3) {              System.out.print("/");          } else {              System.out.print("=");          }      }  }  

Flask and pdf viewer (pdf.js)

Posted: 22 Jun 2021 10:52 AM PDT

I am trying to solve the following problem: I need to display a .pdf document on a web page using pdf.js plug-in. When I embed the following line in a Flask app:

iframe src = "/path/to/test.pdf" width = "30%" height = "30%"></iframe>  

it returns 404 error, but a pdf file is displayed in pdf.js when I use the same line in a regular .html file.

Edward Lance Lorilla

Posted: 22 Jun 2021 06:15 AM PDT

Edward Lance Lorilla


[ VISUAL STUDIO C# ] calendar USING MONTHCALENDAR

Posted: 22 Jun 2021 06:00 AM PDT

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;


// make sure that using System.Diagnostics; is included

using System.Diagnostics; 


namespace Template

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }


        private void pictureBox1_Click(object sender, EventArgs e)

        {

            if (groupBox1.Visible == false)

            {

                groupBox1.Show();

            }

            else { groupBox1.Hide(); textBox1.Text = null; }

        }


        private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)

        {

            textBox1.Text = monthCalendar1.SelectionStart.ToString();

        }

    }

}


V2EX - 技术

Posted: 22 Jun 2021 05:48 AM PDT

V2EX - 技术


[游戏提问] 射击游戏中,子弹轰炸到地面,轰炸造成地面形成一个坑,这个效果怎么实现?

Posted: 22 Jun 2021 04:57 AM PDT

你们的项目启动时间是几秒?

Posted: 22 Jun 2021 04:55 AM PDT

现在手头负责的单体项目是 15-20 秒左右, 有点影响自己的写代码节奏。。加一些启动参数能达到 10-12 秒,感觉变化不大,如果能在 5 秒内启动该多好。
之前待过的公司也都是单体 Java 项目,启动速度慢的能达到 1 分钟, 大家现在手头的项目启动速度都是什么级别的呢? 有没有影响到你们的思维节奏?

面对公司屎山,我内心毫无波澜,因为准备跑路了

Posted: 22 Jun 2021 04:41 AM PDT

从入职第一天起,就发现要面对屎山,但好在 leader 搞这个项目三四年了,感觉还行,每次遇到问题都问他

结果他前阵子离职了。。。。。

最近很艰难,遇到一个不大的问题,我们组内另一个资深工程师也搞不定了。。。。。我俩上周奋斗好几个小时,连本地 server 都 setup 不起来,

面对这陈年屎山,我其实有点不烦躁,就是很迷惘。。。。。

求连体验证码识别方案

Posted: 22 Jun 2021 04:38 AM PDT

比如 aws 的验证码,或者国信证券网上营业厅的验证码。 https://trade2.guosen.com.cn/gxwt/pc/getRandom?rc=0.7285685439680818

cv2 先 2 值化,去干扰线,都没问题,但连体字符搞不定,求切割算法或其他方案。

Rocky Linux 8.4 正式发布了

Posted: 22 Jun 2021 04:16 AM PDT

长时间敲代码,是浅色背景好还是深色背景好?

Posted: 22 Jun 2021 04:09 AM PDT

如题,大家在 ide 里面是深色背景还是浅色的呢? 个人是浅色背景,常用 idea,发现深色背景下的字体对比度不如浅色背景,看久了容易类。老哥们有没有实际的数据说明哪个更好地呀

一个 React re-render 导致 html5 视频无法播放的问题

Posted: 22 Jun 2021 03:59 AM PDT

import React, { useState } from 'react';  export default function App() {   const [video, setVideo] = useState();   const [currentTime, setCurrentTime] = useState(0);    return (     <div className="App">       {video && (         <video           controls           onTimeUpdate={(e) => setCurrentTime(e.target.currentTime)}           src={URL.createObjectURL(video)}           width="250"         />       )}       <p>{currentTime}</p>       <input type="file" onChange={(e) => setVideo(e.target.files?.item(0))} />     </div>   ); } 

一个很简单的 App,加载本地视频,在视频播放的同时,在页面上显示当前视频的时间。但是载入视频后,点击播放按钮,视频无法播放,看起来像是被重绘了,是因为 setCurrentTime 更新了状态数据,从而导致的重绘吗?那我能在哪里做 setCurrentTime 这个操作呢?谢谢鸭!

在线蹲一个正则表达式,求大佬帮助!

Posted: 22 Jun 2021 03:39 AM PDT

限制输入字符串规则:
1.仅支持输入中英文 数字 连字符- 空格字符
2.且不能全为空格字符

list<map>合并问题,面试题

Posted: 22 Jun 2021 03:36 AM PDT

今天面试,问了个题没答上来。。。

题目: 有 listA<map>例如[{"a1":""},{"a2":""},{"a3":""}...],数据量 10W 条

和 listB<map>例如[{"a1":"aaaa"},{"a3":"ssss"},{"a4":"dddd"}...],数据量 15W 条

listA 中 map 的 key 和 listB 中 map 的 key 有些相同,现需要把 listA 里面的和 listB 里面的 key 相同的合并,保留 listB 里面非空的 map,例如合并后为[{"a1":"aaaa"},{"a2":""},{"a3":"ssss"},{"a4":"dddd"}...]

数据量比较大,不让用双层循环。

这个怎么做啊。。。没思路

群晖用哪种硬盘格式比较好呢?

Posted: 22 Jun 2021 03:35 AM PDT

EXT4 ? BTRFS ?其他? Raid 在磁盘出现故障时,恢复数据的几率大吗? 比如 2 块盘,坏了 1 块,会不会出现一定几率无法恢复 是 1 台 nas 开启 raid 好呢?还是 2 台 nas 备份好呢

请教一个 nginx 请求方面的问题

Posted: 22 Jun 2021 03:28 AM PDT

我用 gunicorn+django 部署了一个项目。前端页面调接口 nginx 提示 error:

[alert] 8#8: *12811 zero size buf in writer t:1 r:1 f:0 000056152536F2F0 000056152536F2F0-000056152536F2F0 0000000000000000 0-0 while sending to client 

nginx 配置如下:

   ssl_certificate   conf.d/letsencrypt/3481255__bolineyecare.com.pem;     ssl_certificate_key  conf.d/letsencrypt/3481255__bolineyecare.com.key;     ssl_session_timeout 5m;     ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;     ssl_protocols TLSv1 TLSv1.1 TLSv1.2;     ssl_prefer_server_ciphers on;     charset utf-8;     expires +0d;     add_header Pragma "no-cache";      root  /usr/share/nginx/html/collets_web/dist;     client_max_body_size    2000m;     client_body_buffer_size 2000m;     proxy_read_timeout  20m;      gzip on;     gzip_min_length 4k;     gzip_buffers 4 16k;     gzip_comp_level 6;     gzip_types text/plain application/x-javascript text/css application/xml application/javascript application/json;     gzip_vary on;     gzip_http_version 1.1;     # rewrite ^/$ /admin/ last;     location /api/purchasing/ {        proxy_pass    http://127.0.0.1:9527/api/purchasing/;         proxy_redirect    off;         proxy_set_header    Host    $host;         proxy_set_header    X-Real-IP    $remote_addr;         proxy_set_header    X-Forwarded-For    $proxy_add_x_forwarded_for;         add_header    Cache-Control no-store;         client_max_body_size    2000m;     } 

这两天 baidu 、google 都还没有找到问题。有一种说法是数据的问题。

如何以最快速度加载 H5 页面,考虑网络不佳的情况?

Posted: 22 Jun 2021 03:26 AM PDT

如题,公司在做一个类似收钱吧的产品

需要用户扫一个二维码,加载微信公众号下的付款页面

页面内容是一个简单的数字键盘,用于输入付款的金额

这个过程有一个微信授权的跳转,大概 200ms 左右

服务器页面的响应大概 400ms 左右

这是正常网络的情况,但是会有弱网络的情况,比如小县城的菜市场

目前是单台服务器, 加载的 js 放了 cdn,然后还有个商家上传的 logo,压缩过

老板的问题是,为什么别人(收钱吧)在(菜市场)打开很快,而我们的很慢?

求教各位大佬,还有什么办法可以加快页面加载速度 ?

阿里云的 SLB 负载均衡+高可用的服务,感觉是为了高并发和弹性扩容设计的,用在提高加载速度上效果是否明显?

求助,神奇的 css,为何 overflow 了也没有左右滚动条?

Posted: 22 Jun 2021 03:08 AM PDT

设置父 div 的 overflow 为 scroll,如果它的子 div 的 left 设置为 100(从右侧 overflow),那么父 div 就有左右滚动条;如果 left 设置为-100(从左侧 overflow)就没有滚动条了。

这是为什么呢?难道从左侧 overflow 和从右侧 overflow 还有区别吗?(测试了 chrome 和 firefox 都是这样的)


没有左右滚动条:

<div style="position:relative; left:400px;overflow:scroll;width:200px;height:200px;background:red">   <div style="position:relative; left:-100px;top:100px;width:200px;height:200px;background:blue">  </div>  </div> 

有左右滚动条(与上面的唯一的区别是 left 由-100px 改为了 100px):

<div style="position:relative; left:400px;overflow:scroll;width:200px;height:200px;background:red">   <div style="position:relative; left:100px;top:100px;width:200px;height:200px;background:blue">  </div>  </div> 

亚马逊群晖 DS220+ 1591 元值得轻度用户入手吗?

Posted: 22 Jun 2021 03:03 AM PDT

来源小众软件,手机不方便贴图,麻烦大家自行查看

这段代码有办法更优雅一点吗?

Posted: 22 Jun 2021 02:44 AM PDT

  function traverseTree (tree, cb, isNodeFirst) {     if (isNodeFirst) {       for (let i = 0; i < tree.length; i++) {         cb(tree[i], i, tree)         if (tree[i].children && tree[i].children.length > 0) {           traverseTree(tree[i].children, cb)         }       }     } else {       for (let i = 0; i < tree.length; i++) {         if (tree[i].children && tree[i].children.length > 0) {           traverseTree(tree[i].children, cb)         }         cb(tree[i], i, tree)       }     }   } 

账号被盗恶意登录,现在密码改成了 100 位强密码并启用了双重认证,这下安全了吧?

Posted: 22 Jun 2021 02:30 AM PDT

各位在 10 下用 edge 浏览器的时候 怎样才能只登录浏览器不登录 w10 系统账户?

Posted: 22 Jun 2021 01:41 AM PDT

如题。因为在公司使用。所以只想登录 edge 不登录 win10 系统。但是只要我登录了 edge 他就会默认登录 win10.百度了一下没找到方法。。不知道是不是我姿势不对

说一说我的 NAS 方案

Posted: 22 Jun 2021 01:39 AM PDT

最近看待很多 V 站老哥求 NAS 方案,就来说说我的树莓派+移动硬盘方案吧 16 )

价格

  • 1T 移动硬盘: 200+
  • 树莓派 4B: 看配置 200-600 之间

软件方案

  1. SMB
  2. Webdav
  3. ftp

速度

通过 frp 中转速度大概 500-900k(因为我的中转服务器最大带宽只有 3M),没有试过 frp 的 xtcp 的 p2p 打洞方案 1624324454961.jpg

分片存储-细碎设计系列

Posted: 22 Jun 2021 01:37 AM PDT

摘要

系统设计中数据存储模型是核心部分,量级大、QPS 高,通常会通过分库降低 CPU/内存 /磁盘 IO 等系统瓶颈,通过分表降低单表量级过大从而导致的性能问题。那么类似分片存储后从业务角度看会有什么问题?索引法、基因法有是什么呢?

前言

大量的数据存储,常见的水平分片算法:

  • Range
  • Hash

水平分片算法比较普及,只是为了承上启下简单码了一些,懂的同学可以快速跳过!

Range

基于 Unique Key 按照范围分片。切分的维度:

  • 基于固定量级分表,比如千万级分表。tb1:0-1000W 、tb2:1000W- 2000W 。
  • 基于时间维度分表,比如年、月。

优点:

  • 路由策略简单,按照资源范围快速定位到分片。
  • 扩展性,水平创建日后需要的表即可。

不足:

  • 数据分布严重不均匀。
  • 热点数据集中,单表过热。
  • 量级分表,Unique Key 必须满足递增属性。

Hash

基于 Unique Key 取模,均匀分片。

优点:

  • 路由策略简单,Hash Unique Key 快速定位分片。
  • 数据存储&请求量均匀分配,只要 Unique Key 是均匀的。

不足:

  • 扩展性差,扩容时成本较高。

以上是预热部分,当数据分片后对业务带来了哪些问题呢?

例子

Passport Service 几乎是每一个公司必备的基础服务。

之前团队中负责设计 passport 服务时有过 user 存储的思考和设计,简单说说。

Passport Service 是一个非常常见的基础服务,主要提供账号通行证相关能力, 在使用场景中比如登录、注册、登出、登录态校验、更新等,其核心存储是一张 user 表:

比如:

CREATE TABLE `tb_user0` (   `id` int(10) NOT NULL AUTO_INCREMENT COMMENT '表自增 ID',   `uid` bigint(20) NOT NULL DEFAULT '0' COMMENT '用户 ID',   `user_name` varchar(255) NOT NULL DEFAULT '' COMMENT '用户名,不区分大小些;统一成大写,加密后入库',   `pwd` char(40) NOT NULL DEFAULT '' COMMENT '密码',      `......`      `update_time` int(10) NOT NULL DEFAULT '0' COMMENT '最后更新时间',   `create_time` int(10) NOT NULL DEFAULT '0' COMMENT '创建时间',   PRIMARY KEY (`id`),   KEY `idx_uid` (`uid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户主表'; 

user_name 为登录用户名,通常会是手机号,需要脱敏

ok,这张表如何设计呢?

单表实现不合理,结合业务场景,水平分片是必须要有的。

账号量级大,请求量高,需要保证高可用和高一致性。UID 作为 Unique Key,基于 UID 是高频查询,那么就基于 UID 水平分表。

前台服务相对核心的操作:

  • 登录。 基于 user_name+pwd 实现登录,量级占大盘<=1%此处 UID 为结果数据
  • 校验登录态。基于 token 解析出 UID,判断登录态获取用户信息,量级占大盘>= 99%此处 UID 为起始数据

后台服务(MIS 或运营管理后台) 操作:

  • 超多维度检索
  • 批量分页查询

问题

基于 UID 分片,那么问题来了~

  1. 基于 UID 分片,前台服务登录时没有 UID,只有 user_name,不清楚账号数据落在哪张表,遍历扫全库么?性能低的丑陋。

    用 UID 分片,如何高效实现查询?

    这是本文要讨论的问题。

  2. 数据既然分片了,后台服务的多维度检索,跨分片汇总数据分页查询怎么搞?继续遍历全库内存计数么? Mysql 抗的住么?就算 Mysql 抗的住,后台用户等的起么?就算后台用户脾气好,客户端不会超时么?

    如何多分片高效检索汇总?

    这是本文要讨论的问题++。

方案

issue1: 用 UID 分片,如何高效实现查询?

方案一:索引法

思路:UID 可以定位分片,user_name 无法直接定位,那么通过 user_name 定位 UID,进而定位分片。

方案

  • 基于 Mysql 建立索引表,存储 user_name 与 UID 的 Mapping 关系。
  • 登录校验时基于索引表通过 user_name 查询到 UID,然后路由到指定分片获取数据。
  • 索引表属性少,理论上单行小,容量千万级没问题。
  • 整体模型就是:基于 Index 索引表 + Meta 元数据表(分片)

问题:多一次 DB 查询,性能相对降低。


方案二: 持久化缓存映射

思路:接受不了多一次 DB 查询,那就将映射关系持久化到缓存中。

方案:

  • 基于 缓存(Redis)存储映射关系
  • 登录校验时通过 user_name 到缓存中查询 UID,然后路由到指定分片。
  • 如果缓存没有查到,扫全库获取映射关系持久化到缓存

问题

  • 多一次 Redis 查询,其实也没啥。
  • 缓存击穿风险,Cache 中不存在,当高并发请求打进来,全部去 DB 扫全库,引起 DB 压力瞬间陡增。
  • 缓存穿透风险,当 UID 在 Cache 和 DB 中都不存在,并且不断请求,这种攻击也会导致数据库压力过大。

普通场景下,索引+缓存就可以解决大部分问题


方案三:基于 username 生成 uid

思路:不想单独存储映射关系,直接通过 username 生成 uid

方案:这种通过字符串生成 ID 的 Hash 函数很多,f(username) = uid

问题:

  • Hash 碰撞,UID 冲突的风险
  • username 不能更新

方案四: 基因法

思路: 从 username 中提取基因,加入到 uid 生成规则中。

方案:

这里需要引入分布式全局唯一 ID 生成能力,该基因法依赖分布式 ID,后续会输出《分布式发号器》的文字,先简单普及下分布式 ID 生成的一种常见算法,Snowflake 雪花

SnowFlake 算法生成 id 的结果是一个 64bit 大小的整数,它的结构如下图:

在这里插入图片描述

  • 1bit,不用,因为二进制中最高位是符号位,1 表示负数,0 表示正数。生成的 id 一般都是用整数,所以最高位固定为 0
  • 41bit-时间戳,用来记录时间戳,毫秒级
  • 10bit-工作机器 id,用来记录集群+机器 id
  • 12bit-序列号,序列号,用来记录同毫秒内产生的不同 id,支持步长自增。

所谓基因算法就是提取 username 的分片基因,合并到全局唯一的 ID 上,生成一个全新的 UID 。如下图:

在这里插入图片描述

直接上 Demo 源码吧:

Demo 源码全局唯一 ID 基于 SnowFlake 算法生成,对每个 Block 的 Bit 数简单调整了一下。

基础配置:

const ( 	GENE_NODEIDID_BITS int64 = 10	// 机器节点 10Bit 	GENE_SEQ_BITS      int64 = 13	// 同时间同节点序列号 13Bit 	GENE_BITS          int64 = 12	// 分片基因 12Bit  	GENE_NODEID_MAX int64 = -1 ^ (-1 << GENE_NODEIDID_BITS)	// 机器节点最大值 1024 	GENE_SEQ_MAX    int64 = -1 ^ (-1 << GENE_SEQ_BITS)			// 序列号最大值 8192  	// 这块放弃了时间,为了保留基因。timestemp 单位 s,28 个 bit 大约 7 8 年 	GENE_TIMESTEMP_SHIFT       = GENE_NODEIDID_BITS + GENE_SEQ_BITS + GENE_BITS 	GENE_NODEIDID_SHIFT  int64 = GENE_SEQ_BITS + GENE_BITS 	GENE_SEQ_SHIFT       int64 = GENE_BITS  	// 拒绝浪费,珍惜时间 	GENE_EPOCH int64 = 1624258189  	// 默认步长 	GENE_DEFAULT_STEP_LONG = 1 ) 

这是个 Demo,GENE_BITS 位数需要根据分片数量决定,比如分 16 片,那么 GENE_BITS 4 个 bit 就可以

基因 ID 实例:

type GeneID struct { 	m         sync.Mutex	// 读写锁 	timestemp int64				// 当前时间戳 	nodeID    int64				// 机器节点 	seq       int64				// 序列号 	geneID    int64				// 基因 	step      int64				// 序列号增长步长 } 

样本基因提取:

// 基于基因样本提取基因 ID func ExtractGene(geneSample []byte) int64 { 	gene := md5.Sum(geneSample) 	hashGeneValue := fmt.Sprintf("%x", gene)[29:32] 	geneID, _ := strconv.ParseInt(hashGeneValue, 16, 64) 	return geneID } 
  • 样本 Hash 生成 32 位 MD5
  • 取末尾三个字符
  • 将字符串作为 16 进制转化成 int64 000-fff
  • 结果为基因 ID

基于雪花算法生成完整 ID:

func (g *GeneID) Generate() int64 { 	g.m.Lock() 	defer g.m.Unlock()  	now := time.Now().UnixNano() / 1e9 // 纳秒转秒 	if now == g.timestemp { 		g.seq = g.seq + g.step 		if g.seq > GENE_SEQ_MAX { 			for now <= g.timestemp { 				now = time.Now().UnixNano() / 1e9 			} 			g.seq = 0 		} 	} else { 		g.seq = 0 	} 	g.timestemp = now 	return g.timeBlock() | g.nodeBlock() | g.seqBlock() | g.geneBlock() } 

完整 Demo 源码可访问: https://github.com/xiaoxuz/idgenerator

不足: username 不能更新


issue2: 如何多分片高效检索汇总?

思路 1:前后台数据解耦,资源存储隔离,避免后台低效查询引发前台查询抖动。

思路 2:接受数据冗余存储设计,采用其他存储服务作为后台存储组件,数据双写异步写入

思路 3:后台存储组件可以基于数据时效性选择:

  • 时效性要求高:选择Elasticsearch,基于其分布式倒排索引的特性,实时同步前台数据,并为后台服务提供多维度检索和聚合能力。
  • 时效性要求低:选择大数据相关服务,比如 小时级或天级 数据入 Hive

之前基于 Elasticsearch 做过前后台数据隔离设计,大概设计如下:

在这里插入图片描述

基于阿里开源的 Canal 服务实时订阅消费前台 Mysql 的 binlog,将 binlog 发布到 消息队列Kafka中。

下游可以通过 Flink 实时计算服务或者通过 Golang 实现的 Consumer 来消费 Kafka 中的 Binlog,解析并且转存到Elasticsearch

后台服务基于 Elasticsearch 的 RESTful API 实现实时检索和聚合需求。

总结

Issue1: 用 UID 分片,如何高效实现查询?

  • 索引法
  • 缓存映射
  • username 生成 uid
  • 基因法

Issue2:如何多分片高效检索汇总?

  • 前后台资源隔离,冗余存储设计
  • 基于 Es 或大数据相关服务对后台数据进行存储,并提供实时&离线的数据能力。

思考

记忆力好比缓存,记笔记好比落盘。缓存总会失效,硬盘你可以多副本保留。

tips:学习不要光靠脑袋记,沉淀下来记到本子上才是自己的。

在这里插入图片描述

收工

打完收工,感谢阅读!

在这里插入图片描述

react-dnd 有没有用得比较好的兄弟,请教一下?

Posted: 22 Jun 2021 01:28 AM PDT

最近需要实现一个"可以在页面中"拖动的 Panel,我们拿 V2EX 右侧的这个"发帖提示"举例。

PIC_20210622001.jpg

如图,我已经实现了一个 panel,有 header "发帖提示",有内容,就是下面的"主题标题,正文"等等。

  1. 现在我希望这个 panel 可以用鼠标拖动到屏幕 /页面中的任何位置。但是,只有 header 那个"部分"(红色框)能够响应鼠标的拖动。

  2. 发现 react-dnd 组件,是用于 drag & drop 。但是这个貌似很复杂,拖动时,是整个组件都被拖动?能够定制某个"区域",或者某个子组件响应拖动么?或者,需要指定 draggable 的组件,和 droppable 的组件。我这个案例,不需要 target 的位置。

所以,不是很了解 react-dnd 。特意来问问。react-dnd 怎么实现我的需求,或者有没有其它组件能够做到?

p.s. 我找到一个使用起来很简单的组件,react-rnd,这个实现 1 的需求 很容易(试过了),但是,貌似 2 做不到。react-rnd 包含的组件,都是可拖动的。我只想鼠标移动到 header/上面一部分的时候能够拖动就好。 https://github.com/bokuweb/react-rnd

分享一个 App 安装来源追踪工具

Posted: 22 Jun 2021 01:27 AM PDT

作为 APP 的开发者和运营商,都会研究分析渠道的效果。很多 App 在推广的时候,需要分成 N 个渠道来引流,将 H5 落地页分享出去后,我们希望通过一定的技术手段,知道激活或注册用户是从哪个渠道来的。Android 上可以通过打渠道包的形式,将渠道 ID 硬编码到包里做到这一点,但 iOS 上这样做不太现实。

有一个常见的需求就是:在推广渠道相当多的情况下,通过分发 H5 落地页给不同渠道,从每个渠道来的用户,没有任何感知的情况下,后台可以统计到他激活及注册时的渠道 ID (甚至其他任意参数)。

第三方 SDK openinstall 能够解决这个问题

openinstall 能提供哪些服务呢?

1、携带参数安装

为 App 的每一次安装自定义不同的初始化参数,在下载落地页自定义参数,匹配携带参数来区分不同渠道带来的激活用户。通过分发渠道链接给不同渠道,让每个渠道来的用户,没有任何感知的情况下,后台可以统计到他激活及注册时的渠道 ID (甚至其他任意参数)。

2、App 渠道统计

  • 免打包 App 渠道推广统计技术,10 分钟快速集成
  • 仅凭渠道链接即可精确统计任意 App 渠道统计效果
  • 兼容 Android/iOS 企业包、App Store
  • 完美支持广告效果统计、地推统计等
  • 独创实时报表、实时排重,第一时间洞明渠道状况

3、免费服务:快速安装与一键拉起

快速安装:社交分享一键安装,从此告别"右上角打开浏览器",大幅提升安装概率,助力用户增长。在微信、QQ、新浪微博、钉钉、支付宝等社交平台中直接快速下载安装 apk (兼容 iOS )告别'右上角打开浏览器'操作。

一键拉起:实现 web 页面到 App 间的无缝跳转,解决拉新、拉活、留存、转化等问题,一键拉起 App 到指定场景页面,给用户更优更快体验。从外部分享链接打开的页面,可一键唤醒 App,直达指定页面,如一键加入游戏房间、视频播放页、App 活动详情页等;首次安装 App 后也可还原到对应场景页。

部分使用场景:

  • 免填邀请码安装:自动识别邀请来源,提升安装率与 App 推广裂变效率
  • 移动广告效果统计:简单、灵活、上手快,不要 IDFA,可实时排重,及时发现异常渠道
  • 安装后自动加好友:App 老带新邀请活动,促进用户关系链建立
  • App 地推统计:人手一个二维码,精确统计每个地推人员业绩
  • 社交分享效果统计:精准统计每个分享带来的安装量,不再依赖不可靠的点击量
  • CPS 渠道效果统计:精准统计、为分成结算提供准确可靠的依据
  • 快速下载:微信等社交平台中快速下载
  • 一键拉起 App:iOS、安卓无障碍场景还原,唤醒 App 促活
  • Android 多渠道打包统计:无需技术人员,轻松在线制作安卓渠道包

传送门https://www.openinstall.io/

引用 tools.jar 下的类, 编译不过?

Posted: 22 Jun 2021 12:54 AM PDT

代码

import com.sun.tools.javac.util.Abort;   // 来自 tools.jar 中的类  public class Test {     public static void main(String[] args) {         System.out.println("hello world");     } } 

使用 javac 来编译, 报如下错误

程序包 com.sun.tools.javac.util 不存在

使用的是 jdk1.8

有铁子知道原因么?

求教, docker 安装 redis cluster 后, 客户端/redis-cli -c 跳转啥的访问到的是 docker 内部的 ip. 连接失败.

Posted: 22 Jun 2021 12:35 AM PDT

创建了一个 bridge network, 解决了容器之间网络访问问题, 但客户端连接 redis cluster 后, 获取到的节点的 ip 是 docker 分配给容器的 ip. 这肯定访问不了.

有大侠知道解决办法吗.. 头都秃噜皮了.

安卓 recycleview

Posted: 21 Jun 2021 11:48 PM PDT

recycleview FlexboxLayoutManager 可以通过 setMaxLine 设置只显示多少行 ,但是最后的一行的元素宽度会被压缩 有办法不让压缩吗?能展示多少个就多少个

关于 PHP 的 yield 的一个奇怪的问题

Posted: 21 Jun 2021 10:30 PM PDT

最近在学习 PHP yield 相关的知识,遇到了一个搞不懂的问题,直接上代码:

function gen() {     for ($i = 0; $i < 3; $i++) {         echo "For index:$i\n";         $tmp = (yield $i);     } }  $gen = gen(); foreach ($gen as $val) {     echo "Generator return:$val\n"; } echo "Finish\n"; 

上面这段代码会输出:

For index:0 Generator return:0 For index:1 Generator return:1 For index:2 Generator return:2 Finish 

但是,只要在代码里加多一句send的代码,如下:

function gen() {     for ($i = 0; $i < 3; $i++) {         echo "For index:$i\n";         $tmp = (yield $i);     } }  $gen = gen(); foreach ($gen as $val) {     echo "Generator return:$val\n";     $gen->send(++$val); // 这句是新加的代码 } echo "Finish\n"; 

然后输出就会变成(相比原输出,少了一行"Generator return:1"):

For index:0 Generator return:0 For index:1 For index:2 Generator return:2 Finish 

问题:在这个例子里,为什么加了一句 send 后,输出内容就改变了?

请问,这种情况下返回类型声明有必要吗?

Posted: 21 Jun 2021 09:40 PM PDT

// 文件或目录是否存在 public static function exists($path): bool { 	return file_exists($path); } 

这里的 : bool 有必要吗?感谢!

格式化磁盘失败(35)这个是什么问题= =

Posted: 21 Jun 2021 09:11 PM PDT

主板是华擎 j3455,我把 3617 引导装在了 128 的 ssd 上,插上硬盘后安装系统就报 35 错误,无法格式化

如何在一段时间内逐渐降低 Windows 的音量?

Posted: 21 Jun 2021 09:00 PM PDT

有些用户在晚上放音乐时会有这个需求

Linux 下应该可以用 Bash 非常方便地实现

Foobar2000 的一些插件或许也可以实现,但是解决方案和具体软件绑定不太好


请问有什么现成的工具可以实现这一需求吗?

萌新请教一个 ES 字符数组过滤问题

Posted: 21 Jun 2021 07:44 PM PDT

索引中某个字段的值是字符数组,例如"test": ["test1", "test2"],查询的时候怎么过滤数组中某个值,只知道 long 类型可以直接过滤,但是这种复合类型似乎不行,mapping 是
"mappings" : {
"properties" : {
"test" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
}
}

CloudQuery 的数据安全技术运用

Posted: 21 Jun 2021 07:42 PM PDT

随着电力行业信息化的不断发展,其内部信息系统越来越复杂,数据库作为信息系统的核心和基础,承载着越来越多的关键业务信息。同时,国家对信息安全方面的重视程度也逐步加深:2014 年 7 月 2 日,国家能源局发布《电力行业网络与信息安全管理办法》; 2018 年,9 月 13 日,国家能源局发布《关于加强电力行业网络安全工作的指导意见》,内容全面覆盖《网络安全法》、《电力监管条例》及相关法律法规要求,对加强关键信息基础设施安全保护、加强电力企业数据安全保护等方面提出了更高、更严的要求。

H 电力公司经过多年发展,依靠现代化经营管理能力,不断加强了信息化、自动化、系统化的特点,而基于政策指导和信息数据化进程不断加快,H 电力公司更需要对数据进行强制性、可控性保护。

一方面,H 电力公司需要通过不断挖掘数据价值以支撑自身服务质量、工作效率和发展需要;另一方面,又要保证数据在复杂场景、系统之间被安全、合理的访问和使用。

传统安全防护手段无法跨越的鸿沟

根据国家能源局对数据安全的意见及 H 电力公司对数据安全的要求,H 电力公司进行了自查,发现了如下不足:

敏感数据管理不足

随着 H 电力公司信息化建设的持续推进,营销、人资、财务、资产、协同、综合等核心系统中存储着大量的业务往来、用户隐私等重要敏感数据。

H 电力公司内部电力数据传输与共享场景普遍,当前虽然有一些数据脱敏手段,但是主要采用脚本或人工脱敏的方式,脱敏规则不统一,从而导致脱敏效率低下,以及脱敏后数据质量差、数据间关联关系被破坏等一系列问题,需要通过对敏感数据进行专业的脱敏实现,"用、护"结合。

风险行为监控不足

H 电力公司信息化规模庞大、系统繁杂、人员众多,日常工作中发生越权访问、下载或篡改数据等违规操作行为难以及时发现和定位,往往对内部数据安全事件的预防和调查造成困扰。

数据库运维管控不足

H 电力公司的网络复杂、业务特殊、数据库众多,在运维专区中,使用堡垒机来对运维人员进行管理,但这种管理方式在数据安全防护上存在一定问题:运维人员不按操作规范或既定方案进行数据库运维操作、非法导出敏感数据、数据库操作行为没有细粒度的审计记录等。

H 电力公司根据目前数据安全痛点和对现状的深入分析,提出如下需求:

1.实现与现有运维管理流程深度融合,实时监控运维人员数据库操作; 2.实现与现有 SPV 集成,运维人员无需单独申请对数据库访问,保持操作习惯不变; 3.实现细粒度运维管控,控制对象可以是库,可以是表,并可以精准到列;除了传统的增删改查操作外,还可以根据访问的影响行判断是否存在数据窃取、批量删除等高危行为;管控的对象还包括用户、登录 IP 、时间、客户端工具等多种条件; 4.提供用户行为审计,方便及时发现风险隐患; 5.支持动态数据遮蔽防止敏感数据泄漏,查询数据自动显示签名,防止拍照外传。

###没有授权进不去 未经许可拿不走 数据泄漏赖不掉

针对以上 H 电力公司面临的问题,CloudQuery 提出本次项目目标应做到"没有授权进不去,未经许可拿不走,数据泄漏赖不掉"。

根据 H 电力公司对信息安全工作的指示,加强对数据中心数据安全的防护要求,经过深入研究,整理出如下建设思路:

数据脱敏

由于 H 电力公司数据错综复杂,各业务数据流转通道各不相同,按照数据的分级分类标准,在对数据进行共享时,应针对重要数据进行脱敏降级,确保数据接收方不会对数据内容进行二次扩散。

数据库安全管控

通过引入 CloudQuery,对数据库的访问及其他操作行为进行细粒度防御、审计分析,从而全程监控、记录包括非法访问、数据库违规操作、数据批量导出或篡改在内等一系列风险行为,实现对所有数据访问行为进行审计记录,然后通过数据分析技术结合数据操作审计典型策略要求,对风险行为进行挖掘和预警,并可在安全事件发生后,做到准确、高效的溯源定责。

数据库运维与管理

在确保不影响正常开展运维工作的前提下,建立数据库运维操作的审批机制和技术措施。通过 CloudQuery 对所有涉及敏感数据的操作进行限制,强化对数据库运维操作的监管力度,及时阻断越权操作行为的发生,令运维工作实际操作与计划操作保持一致。

对数据运维操作的关键动作进行划分,将那些敏感操作梳理出来并默认禁止。当有变更需求时,通过发起运维审批流程,根据审批小组的审批意见,有序、安全的执行运维操作。

四大核心模块 解决电力行业棘手问题

针对 H 电力公司的系统现状、其数据库安全管控需求及目标,CloudQuery 制定了符合 H 电力公司数据库安全管控目标的解决方案,全面发挥数据库安全管控平台在企业中的价值。

CloudQuery 作为一体化企业数据安全管控平台,是企业数据操作的入口,将组织(包含应用)、数据、安全整合到一个平台,提供一系列数据应用工具辅助应用和 IT 人员完成相关的数据处理和操作,并逐渐培养组织的数据化流程、协作机制,完善组织的数据意识。

CloudQuery 采用以服务组件为单位,面向云的分布式架构,支持高可用模式保持用户使用的连续性,针对 H 电力公司,我们主要将平台划分为四大核心模块:数据处理中心、用户管控中心、监控中心、审计中心。

数据处理中心:广泛的数据库支持,集中管控数据

CloudQuery 支持绝大多数国内外主流数据库以及中间件,目前支持 Oracle 、SQLServer 、MySQL 、PostgreSQL 、Redis 、Hbase 、达梦、RDS for MySQL 等,未来将支持更多种类的数据库及中间件数据源。覆盖 H 电力公司目前使用的主要数据库数据源。同时,CloudQuery 完美支持各数据库特性,契合操作人员日常数据操作习惯。

用一个平台对所有数据操作进行管控,包含登录登出、权限、脱敏、审计、监控、过滤、回退等。内置一系列流程库,可通过 OpenAPI 接口与现有运维管理系统进行对接,实现数据操作 /授权在数据中心内部流转。

对于 H 电力公司的数据脱敏要求,CloudQuery 采用被动脱敏方式,即不改变数据库内容,但查询得到的结果为脱敏后的数据。脱敏按照规则来处理数据,规则分为内置和动态,内置规则只要用户查询的数据中符合系统内部定义的敏感资源,就会被处理;动态规则指系统管理员或者拥有者根据业务自定义,比如订单里的门牌号等。系统支持 5 种脱敏模式设定:替换、掩码、加密、截断后加密和无效化。

脱敏还会应用在以下场景:

  • 导出:导出的数据条目只要符合脱敏设定,那么不管是什么样的文件格式,其内容都会被脱敏;

  • 转储:转储的 SQL 语句,其内容也会被脱敏。

用户管控中心:细粒度权限管控,越权访问需审批

针对可能存在的用户越权访问、非法导出等违规行为,CloudQuery 从不同需求和不同维度进行细粒度权限控制:

  • 操作权限:根据不同的数据源可以分配不同权限,权限由创建连接的账号所拥有的权限列表为全集,可以向下分发,默认加入连接的用户只拥有 select (查询)权限,其他均需要手动赋权或通过流程进行提权申请。

  • 限时限量:可对数据操作进行限时限量权限管控,约定允许操作的开始日期时间和结束日期时间;选择每周能操作的天数;限制用户每个自然周期查询可以得到的记录数,周期结束限量会清零。周期可以灵活配置(天、周、月)。

  • 高危操作限制:对核心业务系统中,重要的有库、表操作非常关键,随意变更可能会带来灾难性影响,在 Cloud Query 将其定义为"高危资源",在其上的所有变更操作(DML 、DDL)都会生成工单;危险性较高的操作,比如 truncate, delete 等等,也同样可被管理员设置为"高危操作"。所有高危操作需要走工单,获取短期的权限,解封操作。

  • 数据过滤:数据库过滤在某种程度上实现了用户的多租,即多个用户使用同一个数据库连接,看到的是不同的数据"视图",千人千面,这极大的增加了权限的灵活性。

  • 数据导出限制:数据导出目前支持 excel 、csv 、txt 、pdf 等格式,支持加密、水印,内容为表格状。结果集导出会受到权限的制约,默认都是关闭状态,如果需要某张表的导出权限可以在流程中向连接管理员发起申请,审批通过后即可进行导出操作。导出同时受到过滤以及脱敏等相关权限的制约,例如当用户在查询结果集时某一列受到脱敏限制,同时在导出时该列也是被脱敏的状态。

审计中心:记录用户行为,风险操作可追踪

CloudQuery 审计系统可跟踪用户在平台上的所有操作,覆盖数据库、流程、权限等方面的查询和变更。审计明细包含用户、连接、库、操作对象、动作、摘要、时间、结果、IP 来源等,可按条件过滤,并支持 Excel 导出。

除了审计明细,系统还支持面向业务的审计分析,可进行多维度的分析,如 UV 、PV 、数据库类型、语句执行时长、慢查询、高危操作。

而通过应用探针或 Cloud Query 提供的审计驱动可对应用的数据操作进行审计分析。相对于面向人的操作审计,应用数据审计主要是站在数据库管理员和安全的视角,对应用的数据访问进行分析,找出违反审计规则的语句,每一个应用包含一个审计视图。主要包含:

  • 审计明细:包含应用 ID 、数据源、库、操作对象、动作、摘要、时间、结果、IP 来源等。

  • 慢查询:数据库语句执行时间连续超过某一个阈值的语句聚合,采样窗口(分钟)可由系统设置。

  • 高危操作:识别出应用中对特定资源的非法操作。

  • 非法地址:根据 IP 来源,识别与数据库不匹配的操作。比如生产环境,只能限于生成应用 IP,不能是测试应用 IP 。

同时应用审计会基于 SQL 模式进行数据分析,支持以下维度的分析:

  • 常用热点表:基于数据库下每张表的读写次数计算出每张表的热度,尽量排序得出热度前十的表进行展示

  • 应用 Top SQL:基于应用的语句执行次数统计出排行前 20 的 SQL,方便 DBA 及时查看进行索引调整等 SQL 优化

  • 应用慢 SQL:基于语句执行时长列出应用的慢 SQL,为 DBA 等相关工作人员进行 SQL 审核提供方便

数据库监控中心:

CloudQuery 可以提供一个集中监控平台,连接管理员可以看到自己管纳连接的数据库负载情况,针对每一种数据源会有不同的监控指标,方便更直观的排查与定位问题。

CloudQuery 的应用价值

没有授权进不去

基于细粒度的权限管控体系,CloudQuery 通过「用户-角色-权限」,在快速授权的同时精准控制每个用户的访问及操作权限,规避了 H 电力公司原先可能面临的越权访问、下载或篡改数据等违规操作行为。

未经许可拿不走

CloudQuery 以独创的「查导分离」作为数据防泄漏的最后一道防线,将导出动作单独形成一种权限类型,与查询动作分离开来。即使 H 电力公司内部人员恶意获取数据也无法将数据落地至 PC 电脑,更别提在企业内部甚至外部进行流通。

数据泄露赖不掉

CloudQuery 作为企业内部的第四道安全防护门。对平台内部众多操作进行埋点,保证 H 电力公司的用户每一个动作都可追踪、可溯源。一旦有用户执行恶意语句或误操作可以及时定位到问题用户及用户 PC IP 。同时,CloudQuery 辅助以告警模块,从不同风控视角来监测当前平台内用户的操作风险性,可以让 H 电力公司在发生数据泄漏时间后快速、精准定位到责任人,及时还原丢失数据。

从 H 电力公司的应用可见,CloudQuery 站在企业角度,根据内部数据流向提供全链路的干涉跟踪保护机制,贯穿数据登录、使用、登出整个生命周期。1:1 针对各数据源的终端,可实时对操作的 SQL 执行拦截、分析、审计、告警等操作,精确到人和应用。避免延后追溯,避免安装堡垒机客户端,也避免审计记录和录像的对比,极大的提高了审计效率和用户体验,让企业内部数据运转更加流畅、安全。

官网地址:http://cloudquery.club/

PDF 去水印

Posted: 21 Jun 2021 07:42 PM PDT

看领域驱动设计时,google 搜索下载了一本 PDF,每一页都印着水印,学习本身就是枯燥的事情,在加上这洗脑水印,着实令人不爽。试了很多网站和 APP 去水印的功能 都不能去掉,就萌生了学一下 PDF 语法,自己实现 PDF 去水印

有同感的同学可以用一下我博客里的 PDF 去水印功能。

免费 PDF 去水印_douyacun

已经实现:

  • 删除 图片 /文字 /图形 水印

未实现:

  • PDF 可以是纯图片的,水印如果印在图片上,不支持去掉图片上的水印。
  • 大于 10M 以上的文件,小服务器支撑不起,发邮箱线下帮忙处理

VLOOK 10.5 发布!表格自动排版特性又上新了~好用实用的 Markdown 主题包与插件

Posted: 21 Jun 2021 05:31 PM PDT

VLOOK™ 是针对 ![Typora] Typora[^Typora] (跨平台 Markdown 编辑器)的 主题包增强插件(针对导出的 HTML 文件)。

VLOOK™ 属于开源软件(遵从 MIT License),也是 ![OSChina]开源中国 推荐的国产开源产品、Typora 的首个增强插件。

VLOOK™ 的所有特性清单,详见快速入坑 → 一键进入

Markdown 粉最喜欢 VLOOK 「表格自动化排版」特性,今天又上新了!

在 V10.5 版本中,可以实现快速设置表格列头自动重复出现了~这个对于长表格、带行分组的表格绝对是友好的助攻。


完整的更新日志如下:

表格

  • (+新增)表格列头支持标记为重复显示 详情
  • (*修复)无行自动编号时非分组单元格的缩进问题
  • (*修复)列头中间内容存在格式(如高亮、换行),会导致列合并异常
  • (*修复)设置列格式时,单元格部分内容为高亮时不应转换为单元格高亮

主题、动效

  • (+新增)成功复制代码块内容的显示高亮动效
  • (^完善)支持通过文档 URL 参数 effects 设置动效等级 详情
  • (^完善)优化主题包大小
  • (*修复)在线版插件动态切换主题的兼容问题

导航中心、段落导航

  • (^完善)收起导航中心后,增加动画式提示将鼠标移至边缘(可快速浮动显示导航中心)
  • (~调整)为改善操作体验,将双击激活段落导航改为三击鼠标

题注

  • (*修复)表格、代码块以 h6 作为题注时,页内链接无法跳转至该 h6 的问题

其他

  • (^完善)一些小小的代码和性能优化
  • (*修复)其他一些小小的问题

欢迎 Markdown 粉加入 VLOOK™ 的 Q 群


项目托管于:

一个头疼的问题

Posted: 21 Jun 2021 04:35 PM PDT

假设我们现在有 3 个环境 线上 测试 开发

Q1. 当线上出现 bug 我们该如何重现 bug ? 比如中间的数据重现 MQ,redis,数据库等

我觉得只能日志排除,因为想要弄到线上数据一模一样很难

Q2. 测试环境发现 bug 我们该如何重现 bug ?比如中间的数据重现 MQ,redis,数据库等

我觉得看项目规模,但是随着项目越来越大,也只能通过日志排除,很难去同步数据

那么我想问一下, 像大厂这些项目用户千万亿的数据级别,排查 bug 和 bug 重现是怎么实现的呢?

非常好奇。望大佬们指条明路。

有没有啥的,现成的解决方案?

求 V 友推荐个 Hugo 主题~

Posted: 21 Jun 2021 01:08 PM PDT

已经有单独的博客站,所以希望是 Introduction 类型的主题。用于生成 Home Page 。

目前看上的有:

docker 运行 redis, NFS 挂载目录权限不足的问题

Posted: 21 Jun 2021 12:22 PM PDT

NFS 是用的群晖 NAS 创建的 RVJijA.png

运行 jumpserver start 的时候查看日志说是 redis 目录没权限 我加了 privileged: true 参数启动还是无效,我还特意用 docker run 跑了一下也是如此

mkdir -p /opt/jumpserver mount -t nfs 192.168.2.38:/volume1/jumpserver /opt/jumpserver 
docker run -d -t \ -v /opt/jumpserver/redis/data:/data \ --privileged=true \ --name redis jumpserver/redis:6-alpine 

jumpserver 配置

version: '2.4'  services:   redis:     image: jumpserver/redis:6-alpine     container_name: jms_redis     privileged: true     restart: always     volumes:       - ${VOLUME_DIR}/redis/data:/data       - ${CONFIG_DIR}/redis/redis.conf:/etc/redis.conf     command: ["redis-server", "/etc/redis.conf", "--requirepass", "$REDIS_PASSWORD"]     environment:       REDIS_PORT: $REDIS_PORT       REDIS_PASSWORD: $REDIS_PASSWORD     healthcheck:       test: "redis-cli -h 127.0.0.1 -p $$REDIS_PORT -a $$REDIS_PASSWORD info"       interval: 10s       timeout: 5s       retries: 3       start_period: 10s     networks:       - net 

OSCHINA 社区最新软件

Posted: 22 Jun 2021 05:22 AM PDT

OSCHINA 社区最新软件


专业分析 gc 日志 GChisto

Posted: 21 Jun 2021 07:25 PM PDT

GChisto 是一款专业分析 gc 日志的工具,可以通过 gc 日志来分析:Minor GC、full gc的时间、频率等等,通过列表、报表、图表等不同的形式来反应gc的情况。 可以统计总共 gc 次数,youngGC 次数,FullGC次数,次数的百分比,GC消耗的时间,百分比,平均消耗时间,消耗时间最小最大值等。

V 编写的操作系统 Vinix

Posted: 21 Jun 2021 04:27 AM PDT

Vinix 采用 V 编写,是一款致力于打造现代、快速且有用的操作系统。 目标: 保证代码尽可能简单易懂 尽量使用 V 编写 制作一个可在真实硬件上运行的可用操作系统,而不仅仅是运行在模拟器上 面向现代 64 位架构和 CPU 特性 与 Linux 保持良好的源代码级兼容性,以便移植程序

软件供应链完整性框架 SLSA

Posted: 21 Jun 2021 03:42 AM PDT

SLSA:Supply-chain Levels for Software Artifacts (软件产品的供应链级别)是一个端到端的框架,用于确保整个软件供应链中的软件工件的完整性。这些框架的灵感来自于 Google 内部的 "Binary Authorization for Borg",Google 在过去 8 年多的时间里一直在使用,并且是 Google 所有生产工作负载的强制性检查器。 重要提示:SLSA 是一个不断发展的规范,我们正在通过 GitHub issues、电子邮件或反馈表寻找广泛的反馈。 概述 SL...

Recent Questions - Arqade

Posted: 22 Jun 2021 05:17 AM PDT

Recent Questions - Arqade


How to find all accounts you've logged in on steam?

Posted: 22 Jun 2021 05:12 AM PDT

Sometimes, when you login to another account on steam it tells you "Game from the library of NICKNAME". Therefor I assume somewhere there are logs of your previously connected accounts. Where would that be?

Changing colours and textures in Fortnite Creative?

Posted: 22 Jun 2021 01:52 AM PDT

How do you change the colour and texture of props, grass, particle effects and similar in Fortnite's Creative Mode? I know how to do such things in other games like Garry's Mod where there are tools and menus specifically for that purpose, but I have no idea where to even begin looking in Fortnite. I know there are settings for light colour and fog colour and where those are but not for individual items or terrain. For the longest time I didn't even think it was possible until I accidentally stepped into a portal at the Hub and found myself on an island where there were the torches from the viking castle prefab on the walls with purple fire instead of the normal blue.

So, how do I change the colours and textures of things in Creative? Where are the tools and settings for it hidden? I would really like to make an Autumn island and an Island with the colours of the patches of Alien terrain currently in the game.

Which spell in Dota 2 has the largest AOE?

Posted: 21 Jun 2021 09:52 PM PDT

I think Phoenix's Supernova, Naga Siren's Song of the Siren and Tidehunter's Ravage have big AOE's. But It would be fun to know which spell has the largest AOE >)

How to fix joystick bumps

Posted: 21 Jun 2021 07:44 PM PDT

With my old pair of joy-cons (and my new ones, too), I have noticed that the joysticks have some sort of bumps on them that look a bit like this:

Joy-Con Bumps

I believe that this is because the lid of the joy stick has lots of little edges that have to fit into smaller holes in the actual plastic part of the joy stick.

I have seen that there are fixes such as moving the lid around and using a blow dryer to make it better, but I want to avoid melting or breaking apart any part of my joy-stick.

Is there any way to remove these bumps with no or minimum damage?

How to make a custom crafting recipe for a custom item

Posted: 21 Jun 2021 08:26 PM PDT

Iam making a food pack and i have all the items in game im just starting to make the crafting recipies i have seen many tutorials and am still lost this is what i have

{

"format_version": "1.12",  "minecraft:recipe_shapeless": {      "description": {          "identifier": "food:flour"      },        "priority": 0,      "ingredients": [{           "item": "minecraft:wheat",           "data": 0,           "count": 1      }],      "result": {          "item": "food:flour",          "data": 0,          "count": 3         }  }  

}

Is it possible to actually stop your premium subscription instead of just stopping renewal?

Posted: 21 Jun 2021 06:17 PM PDT

I am going to upgrade to a higher tier of Premium, but I have to wait until my subscription expires. Do I have to wait until it expires, or is it possible to actually stop it?

Can I use Darkness to have a chance to dodge damage from a damage over time tick or other similar effects?

Posted: 21 Jun 2021 03:51 PM PDT

I play a Demon Hunter, and I frequently raid with my friends. Demon Hunters have a defensive spell called Darkness that gives you, and all allies that stand within the area you place Darkness upon, a chance of 20% to avoid all damage from an attack.

The Darkness spell description is:

Summons darkness around you in an 8 yd radius, granting friendly targets a 20% chance to avoid all damage from an attack. Lasts 8 sec.

"Avoid all damage from an attack" is pretty vague here. What counts as an "attack"? If one could infer this to mean an "instance of damage," I'm wondering if I can use it to block damage from a DoT effect. I'm also wondering if it'll trigger on area of effect spells as well. Testing this spell is relatively difficult due to its 5 minute cooldown as well as its low chance of actually triggering the avoid mechanic, otherwise I would have discovered the answer to this myself.

Is something like dodging DoTs possible? If not, what are the actual limitations of the Demon Hunter's Darkness spell?

Invisible roof in XCOM: Enemy Within

Posted: 21 Jun 2021 03:12 PM PDT

I am trying to move a soldier up a ladder to the roof in the iOS version of XCOM: Enemy Within. I used the camera tool to raise my elevation, but the rooftop is invisible, and the roof area is unselectable for movement.

Unclimbable ladder and invisible roof

How do I make the roof visible so I can climb the ladder?

Custom map item/entity in Bedrock edition?

Posted: 21 Jun 2021 10:59 PM PDT

I'm wondering if it's possible to make a custom map item/entity like either of the default maps provided with Minecraft.

Screenshot of a Minecraft map.

I can't find anything in the vanilla resource pack sample, nor on the web, and as such I presume the answer is it's not possible.


How can I create a custom map item/entity?

Why won't my initial climb to 500 feet AGL objective register?

Posted: 21 Jun 2021 01:00 PM PDT

When flying in free flight one of the earliest objectives is to stay in line with the runway and to perform the initial climb to 500 feet above ground level. Staying in line with the runway is an easy objective, and still completes even if you divert, but I've never satisfied the climb to 500 feet objective. Regardless of what altitude I'm flying at the objective remains.

I've tried to hold an altitude of 500 feet above the literal sea (taking off from Seattle means it isn't hard to find the ocean), or flying at drastically high altitudes of 20,000 feet AGL. Neither route completed the objective. What do I need to do to register the initial climb as complete?

MS Flight Simulator thinks there's not enough space to download although there appears to be

Posted: 21 Jun 2021 01:38 PM PDT

I installed MS Flight Simulator 2020, but then realized that I needed to clear out a lot of space. 1 week of deleting later, I finally got the amount of space needed, but Flight Simulator does not seem to realize it. How can I finally install the game? enter image description here

Bluetooth adapter might render switch unusable?

Posted: 21 Jun 2021 11:53 AM PDT

'...Unauthorized modification of the hardware or software of you Nintendo Switch system, or the use of an unauthorized device in connection with your system, may render the system permanently unusable.'

Does this include bluetooth adapters? Also, could an adapter brick my switch via power?

Does Cryosthesia 77k count towards Energy Weapon Kills?

Posted: 21 Jun 2021 10:54 AM PDT

This new Season of the Splicer sidearm is in the top slot, the 'kinetic slot', but is a Stasis weapon. This means it deals Stasis damage and and counts towards kills with Stasis.

Cryosthesia 77k on light.gg

However, as it has an energy type, just like Solar, Arc and Void. Does this weapon count as an Energy Weapon for bounties or Exotics which specify energy weapon kills.

Such an exotic might be Verity's Brow which has the following perk

Energy weapon kills grant Death Throes, which provides a bonus to the damage of your grenades and grants you grenade energy. When you have Death Throes and throw a grenade, nearby allies gain greatly increased grenade regeneration for a short time.

Play games on my TV as a second display while working on the primary screen

Posted: 21 Jun 2021 12:00 PM PDT

I connected my TV(located in another room) to my pc with long HDMI cable to play games on it while working at the same time on primary screen Monitor = Primary screen & TV = Secondary screen. I installed dual monitor tools and I can move the game screen to my TV without any problem (I selected Extend option on my win 10) also I have a wireless game controller and I can control the game with it. the problem starts when I want to work on my Monitor (Primary screen) at the same time. as soon as I click on my monitor the game pause on my TV and I have to click on game icon on the taskbar to resume the game again is there any solution to solve this issue ? can I play game on my TV and work on my monitor at the same time ?

How do I defeat the CAT6 Heavy on Insanity difficulty?

Posted: 21 Jun 2021 02:13 PM PDT

I'm playing the Mass Effect 3: Legendary Edition Citadel DLC on Insanity difficulty, and I've met an enemy I can't kill: the CAT6 Heavy.

I've tried different combinations of squad, powers, ammo and tactics, and I can't take on more than one at a time.

Right in the beginning of The Citadel, you have 3 to contend with. The regular guardians have a simple exploit, and you can rip their shields from them with a biotic power. CAT6 Heavy has no way to remove their shield. The concussive shot momentarily makes them move their shield, but it doesn't make them any less vulnerable. Even hitting them when they are turned, and hitting their body doesn't seem to hurt them much.

I'm playing on Insanity difficulty, and I will not change the difficulty. I am playing with a Soldier Shepard.

How do I defeat the CAT6 Heavy on Insanity difficulty?

Can't join my server: "io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information"

Posted: 22 Jun 2021 05:02 AM PDT

I used to be able to connect to my bukkit server in Minecraft by my IP address, but after a while, I could not. It gives me this error when I try to join my server:

Failed to connect to the server

io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information

enter image description here

I know that my IPv4 address is 192.168.1.105, and I put this in the "server.properties" file.

enter image description here enter image description here

When I click on the run.bat file, the server turns on, but I am not able to join it with my IP address, (I can just join with IP4 address).

And Here are my port forwarding settings:

enter image description here

Here is firewall setting:

enter image description here

TIP: I can just join my server using the IPv4 address (192.168.1.105), but me and my friends can't join with my IP address. How do I resolve this problem?

EDITED:

I changed my modem and tried again and it worked completly! However, when I connect to another modem, I am not able to connect to my server

How can I get MAME to show sensible scan line effects for the Fairchild Channel F?

Posted: 21 Jun 2021 06:37 PM PDT

I've just started using HLSL in MAME to get that classic scan line look, and it works a treat — most of the time.

However, I'm trying to get my channelf games to quadruple their scan lines (like the original console did). By that I mean: each row of pixels occupies four scan lines on the CRT, as you can observe by fullscreening this video.

I'm not having any luck, though. Mine comes out looking like this instead. (The snapshot mechanism screwed up the aspect ratio here, but you can see what I mean.) The effect clearly thinks: "one row of pixels = one scan line, what's the problem?". Ha. At 58 pixels vertical, that's not gonna cut it.

Anwyay, the prescale option doesn't do anything to help, even though it seems like it should be exactly what I want.

Any clues?

(I'd also be interested to know where to put any config file(s) that applies only to channelf. Obviously I don't want what I'm asking for here done elsewhere.)

How do you pop the giant bubble in the Golden Apple Archipelago?

Posted: 22 Jun 2021 01:31 AM PDT

enter image description here

Tried running around it trying to find some puzzle mechanism. There's a set of 3 lasers converging onto a single crystal at one part but it doesn't seem like you can interact with it. Is there a way to pop the bubble?

I can't see my coordinates and light level when I press F3 on my friend's smp

Posted: 22 Jun 2021 05:06 AM PDT

I tried searching it up but I couldn't figure out why it wouldn't show the coordinates and light level.

How can I compact my Scrap Mechanic logic down?

Posted: 22 Jun 2021 01:29 AM PDT

Is there a way for me to more easily compact my logic? For example, Here I have this start to a 64bit ALU: enter image description here

I have no idea how I could just turn this into a 64-wide prism, but so often when you see complicated logic on the workshop, that is how it comes. A glass-enclosed cube.

How do people make these?

Note: If anyone reading this question knows a Scrap Mechanic logical engineer, share this question with them! Thank you.

Does Daruk's Protection absorb damage?

Posted: 21 Jun 2021 01:47 PM PDT

I'm really bad at deflecting attacks, so I just use Daruk's Protection to deflect them, but I noticed that when I use it to deflect guardian beams, but it didn't kill a STATIONARY guardian! (the rusted ones, not the turrets) Why? Do I need to do some kind of absurd flurry rushing/shield parrying training? Other random stuff I had: master sword, near hyrule castle, Savage lynel shield, (I forgot the bow) and had no buffs.

What trigger words will give resources in Studio Hoppe games, and during what times?

Posted: 22 Jun 2021 05:03 AM PDT

Games by Studio Hoppe(Planet Capture, Desert Order, Strategy Combat, etc,) will have seasonal trigger words that when put into the chat will give the player resources. What are some of these trigger phrases? What time frame do they work in?

Dolphin emulator only goes up to 90% or unlimited

Posted: 21 Jun 2021 04:00 PM PDT

I'm new to how to use dolphin and I don't know much about what to change. But the speed limit is what seems to be affect my experience with games. The speed limit at 90 is good for some games but it is still A bit too slow. And unlimited makes the game better but everything is too fast, the speech is too fast making it impossible to understand what characters are saying sometimes. How can I get the 100% option? The only games I'm playing are GameCube games.

How can I get more materials in Orna?

Posted: 21 Jun 2021 01:07 PM PDT

To upgrade my equipment at a blacksmith shop, I need to get materials somehow. I found some bones, stone and wood on the map, but that almost nothing.

I know I can also get a little bit of materials from disassembling items but even with these two way materials seems very hard to find.

Am I doing something wrong? What can I do to get more materials?

PC controller issue: D-pad affects X-rotation

Posted: 21 Jun 2021 06:08 PM PDT

Recently, I discovered an issue with my PC controller(namely, Redgear Pro Wireless gamepad). Whenever I move forward in a game(left thumb stick up), the direction changes to the left and whenever I move backwards(left thumb stick down), direction changes to the right. So basically I move forward and left simultaneously, backwards and right simultaneously. The left thumb stick seems to be linked with the right thumb stick(which governs the direction of movement in most video games). Sometimes the controller works properly but most of the times it has this issue. The following screen shot of the game controller settings shows the problem in detail:

Controller Untouched: enter image description here

When the left thumb stick up(notice how it affects the X-axis): enter image description here

When the left thumb stick is down: enter image description here

Now I thought this was a software issue, so I tried my controller in some other PC and unfortunately, I'm having the exact same issue. This seems to indicate that the issue is with the controller itself(i.e hardware issue). This has been bugging me for a while. I've tried to articulate my issue in the best way possible hoping that someone can provide a viable solution(I do not wish to purchase a new controller). In conclusion: please help!

How to zoom out in DOTA2, spectator and SFX animator tool

Posted: 21 Jun 2021 08:03 PM PDT

I was working on a new short film project, and I was wondering if there is any way of capturing video of the whole DOTA map, then slowly zooming in to a lane?

This would be in spectator/replay mode. I want to be able to zoom out completely for a bird's eye view of the whole playing arena.

I tried using dota_camera_distance 5000 but that "wraps the map in clouds" and I can't see any aspect of the map.

Additionally, is there a way of hiding the top bar with hero icons, and the HUD?

How do I ward off Springtrap in FNAF 3 when he is at the office door?

Posted: 21 Jun 2021 10:18 PM PDT

I understand that using the audio too much can result in a Foxy jumpscare, and that you can seal off vents to prevent Springtrap from reaching you through them, but what about when he is right outside the office doorway? You can try to click on him (which does nothing) and you can look away (which results in him killing you) or you can stare at him without moving (Which also results in him killing you). This is all I can think of doing.

Am I allowed to use the audio in another room to lure him away from the doorway after he already saw me, or am I just gonna die anyways? (If there is some other way, can you please tell me?) Plus, whenever I see him on camera, and I use the audio in that same area I see him, it just makes me see a Phantom in the office with me and I have to restart the ventilation system. What am I doing right and what am I doing wrong?

How do I open the door southwest of Snowdin?

Posted: 21 Jun 2021 01:39 PM PDT

I've tried a variety of things, including checking the door with every possible combination of lit mushrooms, but none worked. The only thing that happened here was a random encounter with (IIRC) Glaze, who killed me very quickly. I never managed to get a rematch, however.

I think I am stuck, is there a way to trigger a mission?

Posted: 22 Jun 2021 02:32 AM PDT

I have been playing GTA V for a few hours now without any mission starting. I have just stolen the helicopter from the base, took flight school but now nothing is happening.

Is there a way to trigger the next story mode mission?

or

  • Do I need all Gold in the flight school?
  • I see a 'B' on my radar, but when I get there nothing happens, its just a building with a big garage in the ground floor. Is there anything I am missing?

OSCHINA 社区最新专区文章

Posted: 22 Jun 2021 05:16 AM PDT

OSCHINA 社区最新专区文章


HarmonyOS学习路之开发篇——Intent

Posted: 21 Jun 2021 06:10 PM PDT

# Intent ## 基本概念 Intent是对象之间传递信息的载体。例如,当一个Ability需要启动另一个Ability时,或者一个AbilitySlice需要导航到另一个AbilitySlice时,可以通过Intent指定启动的目标同时携带相关数据。Intent的构成元素包括Operation与Parameters,具体描述参见表1。 表1 Intent的构成元素 ![](https://oscimg.o...

android、ios都没有的混合JS和Java实现页面控制

Posted: 21 Jun 2021 06:51 AM PDT

# 背景 我们都知道前端开发中论开发效率,用类似小程序的开发效率要高于Android和IOS,因为小程序采用了H5的设计思想,采用Html5标签、CSS做页面布局和样式,JS控制逻辑和交互,H5的编写页面效率要远远高于Android和IOS,因此现代很多APP都采用了WebView方式的混合开发模式,通过H5实现页面,再通过JavaScript桥接方式实...

OSCHINA 社区最新专区文章

Posted: 22 Jun 2021 04:57 AM PDT

OSCHINA 社区最新专区文章


node.js 使用puppeteer爬虫框架如何设置socks5带账号密码的代理IP?

Posted: 21 Jun 2021 09:15 PM PDT

或者有哪些node.js爬虫框架可以设置这种代理IP? 我用puppeteer爬虫框架设置代理一直连接超时 或报错 设置格式: const browser = await puppeteer.launch({ headless: true, args: [ '--no-sandbox', '--disable-setuid-sandbox', '-–proxy-server=socks5://username:password@ip :port' ] }); 有大佬告知下如何操作吗。...

无缝构建跨设备体验 | Google I/O 大会精彩回顾

Posted: 21 Jun 2021 08:26 PM PDT

![](https://devrel.andfun.cn/devrel/posts/2021/06/bLZqPM.jpg) *作者 / Android 团队* 在今年的 [Google I/O](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=Mzk0NDIwMTExNw==&action=getalbum&album_id=1816170362913538051#wechat_redirect) 大会上,我们讨论了您的应用如何适配 Android 设备的 [各种屏幕尺寸](h...

如何在 Vue 的计算属性中传递参数

Posted: 21 Jun 2021 07:11 AM PDT

在 Vue 中,计算属性(computed )是从其他响应式属性派生的属性,是用于自动监听响应式属性的变化,从而动态计算返回值。计算属性(computed )通常是一个没有参数的函数。当然如果需要像调用方法一样给计算属性传递参数也是可以的,本文介绍两种向计算属性传参的方法。 1.返回函数 这种方式通过计算属性返回的函数来进...

webpack 如何压缩文件

Posted: 21 Jun 2021 07:39 AM PDT

本节我们学习如何压缩 `webpack` 中的文件。在实际应用中,为了缩小打包后包的体积,我们可能需要将 CSS 和 JS 文件进行压缩,这需要用到 `webpack` 中的不同插件来实现。 #### 压缩 CSS 在 `webpack` 中要压缩 CSS 文件,需要用到 `optimize-css-assets-webpack-plugin` 插件,这个插件会在 `webpack` 构建过程中搜索 ...

前端百题——竟然有五种方式实现flat方法

Posted: 21 Jun 2021 06:14 PM PDT

1 背景 不知道老铁们有没有遇到过一道面试题:如何将一个多维数组展开成一个一维数组?当时我遇到的时候还不了解flat这个神奇的方法,用了最传统的解决方法进行解决。 const flatten = arr => arr.toString().split(',').map(item => +item); const arr = [1, 2, [3, 4, [5, 6]]]; console.log(flatten(arr)); // [...

Qt 宣布 Apple Silicon 支持计划已经完成

Posted: 21 Jun 2021 05:48 PM PDT

Qt 官方发文表示,Qt on Apple Silicon 支持计划已经完成,并将在即将发布的 Qt 6.2 版本中提供。 文中表示,当 Apple 去年宣布使用其新的 Apple Silicon M1 芯片将 macOS 过渡到 arm64 时,Qt 开发人员立即开始进行原生支持的原型设计,最初是在开发人员过渡工具包 (DTK) 上,后来在生产硬件可用后。Rosetta 翻译层已经...

Linux Mint 20.2 “Uma” Xfce Beta 发布

Posted: 21 Jun 2021 04:07 PM PDT

Linux Mint 20.2 "Uma" Xfce 的 Beta 版本现已发布。Linux Mint 20.2 是一个长期支持版本,将支持到 2025 年。该版本带有新的软件,并带来改进和许多新功能,使用户的桌面使用起来更加舒适。 主要更新内容 更新管理器现在能够记住每个更新可用的时间,在那段时间内计算机打开了多少天,并评估是否提醒用户有可用更新。...

OSCHINA 社区最新新闻

Posted: 22 Jun 2021 04:54 AM PDT

OSCHINA 社区最新新闻


Rocky Linux 8.4 发布

Posted: 22 Jun 2021 02:24 AM PDT

Rocky Linux 8.4 现已正式发布。Rocky Linux 是一个社区版的企业操作系统,旨在与 Red Hat Enterprise Linux 8.4 实现 100% 的 bug-for-bug 兼容。官方表示,由于这是 Rocky Linux 的第一个版本,所以发布说明只反映了各版本之间上游功能的变化。且不支持从 Rocky Linux 8.3 RC1、Rocky Linux 8.4 RC1 或任何其他候选版本...

360 集团亮相 openEuler 开发者大会,以 360 安全大脑护航开源生态发展

Posted: 22 Jun 2021 02:14 AM PDT

6月10日,由openEuler社区、华为、飞腾、麒麟信安等单位联合主办,三六零安全科技股份有限公司(以下简称:360集团,股票代码:601360)参与协办的openEuler Developer Day2021在北京正式召开。本次大会以"发现最好的我们,创造最好的OS"为主题,旨在推动openEuler社区在多样性算力、云原生全栈、全场景协同等技术发展...

青藤携手 CNCF:面向未来,加快云原生安全发展进程

Posted: 22 Jun 2021 02:04 AM PDT

近期,国内领先的云原生安全厂商青藤加入云原生计算基金会CNCF(Cloud Native Computing Foundation)。未来,青藤将与CNCF紧密合作,积极推动云原生安全行业的发展,向各行业输出面向未来的创新性技术。 据悉,CNCF是目前在云原生应用领域最具影响力的非营利性组织,隶属于Linux基金会。自2015年成立以来,始终致力于帮助...

Qt 宣布 Apple Silicon 支持计划已经完成

Posted: 21 Jun 2021 05:48 PM PDT

Qt 官方发文表示,Qt on Apple Silicon 支持计划已经完成,并将在即将发布的 Qt 6.2 版本中提供。 文中表示,当 Apple 去年宣布使用其新的 Apple Silicon M1 芯片将 macOS 过渡到 arm64 时,Qt 开发人员立即开始进行原生支持的原型设计,最初是在开发人员过渡工具包 (DTK) 上,后来在生产硬件可用后。Rosetta 翻译层已经...

V 语言编写的操作系统:Vinix

Posted: 21 Jun 2021 05:46 PM PDT

V 语言开发团队发布了首个使用 V 编写的操作系统 —— Vinix,并表示此操作系统现在可以运行 mlibc 和 bash。 下载 nightly 版本进行体验 >>> ISO 镜像地址 Vinix 的源代码已遵循 GPLv2 开源许可协议托管在 GitHub,其 repo 显示它采用 V 编写,致力于成为一款现代、快速且有用的操作系统。 Vinix 暂定的目标如下: 保证...

如何构建繁荣的开源社区生态?

Posted: 21 Jun 2021 05:18 PM PDT

Community over Code. 如果你了解开源,那么对这句话一定不陌生。"Community over Code——社区大于代码"最初由 Apache 软件基金会提出。ASF 对此的阐述是:那些历时最久、最成功的开源项目往往更看重协作社区而非代码本身。 代码无疑是非常重要的。但是最好的代码最多可能成为当下每个人都在使用的工具,而最好的社区...

Facebook 联同 MIT 等发布研究手稿:解释深度学习实际工作原理的理论

Posted: 21 Jun 2021 05:17 PM PDT

Facebook、普林斯顿大学和麻省理工学院的 AI 研究人员近日宣布联合出版了一本名为《The Principles of Deep Learning Theory: An Effective Theory Approach to Understanding Neural Networks(深度学习理论原理:理解神经网络的一种有效理论方法)》的书籍。目前,该书的手稿已经公开提供。 根据介绍,在基本层面上,该...

Google 推出 SLSA 框架以加强供应链完整性

Posted: 21 Jun 2021 05:15 PM PDT

近日,Google 推出了 SLSA(Supply chain Levels for Software Artifacts),这是一个新的端到端框架,Google 希望通过 SLSA 能推动标准和准则的实施,以确保整个软件供应链中软件工件的完整性。 供应链完整性攻击这两年大幅增加,而且成为影响所有用户的共通攻击途径。Google 开源安全团队指出,虽然市面上已有局部性的...

深入解析 ZNBase 分布式 SQL 引擎架构的五大服务组件

Posted: 21 Jun 2021 05:15 PM PDT

本文将介绍分布式数据库 ZNBase 的 SQL 引擎架构特点,以及其中各大服务组件的技术原理与工作流程。

AMD 继续推动其 PTDMA 驱动进入 Linux 主线

Posted: 21 Jun 2021 05:14 PM PDT

目前,AMD 推出的适用于 Linux 的驱动程序 PTDMA 已经更新到 v10 版本,以期最终能够合并入 Linux 主线。 PTDMA 是 AMD 于 2019 年 9 月发布的一个 Linux 驱动程序,用于支持 EPYC 处理器的 Pass-Through DMA 控制器,并允许高带宽内存到内存和 I/O 的复制操作。同时,该驱动增加了对多个 PTDMA 实例的支持,每个设备将得...

DalFox —— Go 开发的 XSS 参数分析和扫描工具

Posted: 21 Jun 2021 05:13 PM PDT

功能强大的 XSS 参数分析和扫描工具,可以帮助广大研究人员通过分析参数来寻找 XSS 漏洞,并基于 DOM 解析器来对找到的 XSS 漏洞进行验证。

深度学习模型库入门:中文词法分析-LAC

Posted: 21 Jun 2021 05:11 PM PDT

LAC是一个联合的词法分析模型,能够整体性地完成中文分词、词性标注、专名识别等NLP任务。LAC基于一个堆叠的双向 GRU 结构,在长文本上准确复刻了百度AI开放平台上的词法分析算法。

如何将 MySQL 数据整体迁移到 PostgreSQL 11?

Posted: 21 Jun 2021 05:07 PM PDT

生产环境是 MySQL 5.6.36,如何将 MySQL 数据整体迁移到 PostgreSQL11 中呢?

Gitee 悬赏 | 无人机 3D 目标检测

Posted: 21 Jun 2021 05:01 PM PDT

使用深度相机/双目相机,在某一室外场景下实现 3D 目标检测。

Gitee Reward 正式启航,海量悬赏即将到来

Posted: 21 Jun 2021 04:58 PM PDT

一个月前,Gitee 上线了开源项目 Issue 悬赏功能 Gitee Reward,在小范围公测后,得到了诸多好评与反馈,现在 Gitee Reward 已向所有开源项目开放使用

.NET MAUI Preview 5 发布

Posted: 21 Jun 2021 04:55 PM PDT

.NET MAUI Preview 5 已发布。在此版本中,开发团队启用了动画和视图转换 (view transformation) 功能、完成了多个 UI 组件的移植,并对单个项目模板进行了改进。此外还发布了第一批涵盖 .NET MAUI 介绍和基础方面的预览文档:https://docs.microsoft.com/dotnet/maui/。 动画 目前 .NET MAU 提供了多种方法执行动画,其...

OSCHINA 社区最新专区文章

Posted: 22 Jun 2021 04:30 AM PDT

OSCHINA 社区最新专区文章


【译】创建和分析 Java 堆转储(Heap Dumps)

Posted: 21 Jun 2021 06:16 AM PDT

作为 Java 开发人员,我们熟悉我们的应用程序抛出 OutOfMemoryErrors 或我们的服务器监控工具抛出警报并抱怨 JVM 内存利用率高。 要调查内存问题,通常首先要查看 JVM 堆内存。 要进行此操作,我们可以先触发程序抛出 OutOfMemoryError,然后捕获堆转储。接下来我们将分析这个堆转储,以确定可能导致内存泄漏的潜在对象。...

OSCHINA 社区最新专区文章

Posted: 22 Jun 2021 04:07 AM PDT

OSCHINA 社区最新专区文章


Rocky Linux 8.4 发布

Posted: 22 Jun 2021 02:24 AM PDT

Rocky Linux 8.4 现已正式发布。Rocky Linux 是一个社区版的企业操作系统,旨在与 Red Hat Enterprise Linux 8.4 实现 100% 的 bug-for-bug 兼容。官方表示,由于这是 Rocky Linux 的第一个版本,所以发布说明只反映了各版本之间上游功能的变化。且不支持从 Rocky Linux 8.3 RC1、Rocky Linux 8.4 RC1 或任何其他候选版本...

��Java技术专题-JVM研究系列(41) 带你梳理分析虚拟机栈映射源代码的流程

Posted: 21 Jun 2021 11:42 PM PDT

# Java执行过程介绍 > **类是面向对象编程中最基本的单位。** Java中的类包含三个内容,分别是: ## 属性 - **属性又叫成员变量。** - **属性用于定义类或类对象的数据(静态特征)**。 - **范围为整个类体**。 ## 方法 - **方法用于定义类或类对象的行为特征(执行动作)(动态)**。 - **方法类似于面向过程中的函数,...

数据结构与算法—栈详解

Posted: 21 Jun 2021 11:37 PM PDT

>原创不易 还请一键三连支持 ### 什么是栈 栈在我们日常编码中遇到的非常多,很多人对栈的接触可能仅仅局限在 **递归使用的是栈** 和 **StackOverflowException**,栈是一种后进先出的数据结构(可以想象生化金字塔的牢房和生化角斗场的狗洞)。 栈是这么定义的: 栈(stack)又名堆栈,它是一种**运算受限**的线性表。限定...

十亿级流量下,我与Redis时延小突刺的战斗史

Posted: 21 Jun 2021 06:26 PM PDT

一、背景 某一日收到上游调用方的反馈,提供的某一个Dubbo接口,每天在固定的时间点被短时间熔断,抛出的异常信息为提供方dubbo线程池被耗尽。当前dubbo接口日请求量18亿次,报错请求94W/天,至此开始了优化之旅。 二、快速应急 2.1 快速定位 首先进行常规的系统信息监控(机器、JVM内存、GC、线程),发现虽稍有突刺,但...

小白一看就会的 Spring Cloud Sleuth:分布式请求链路跟踪 建议收藏!

Posted: 21 Jun 2021 12:29 AM PDT

养成阅读好习惯,从关注开始! 更多Java相关资料可以关注公众号【Java大蜗牛】发送:6 Spring Cloud Sleuth:分布式请求链路跟踪 Spring Cloud Sleuth 简介 给服务添加请求链路跟踪 整合Zipkin获取及分析日志 使用Elasticsearch存储跟踪信息 安装Elasticsearch 修改启动参数将信息存储到Elasticsearch 更多启动参数参考 ...

我是一个请求,我该何去何从

Posted: 21 Jun 2021 08:20 PM PDT

摘要:本文主要分析在cse框架下一个请求是怎么被接受和处理的。 本文分享自华为云社区《我是一个请求,我该何去何从?》,原文作者:向昊。 前置知识 cse的通信是基于vert.x来搞的,所以我们首先得了解下里面的几个概念: Verticle:You can think of verticle instances as a bit like actors in the Actor Model. A ty...

重温C与C++之结构体大小计算

Posted: 14 May 2021 05:03 PM PDT

前言 所谓基础不牢,地动山摇。笔者作为一个Android开发者,虽然有些NDK相关的开发经验,但是在写C或C++代码的时候总有一种知其然,不知其所以然的感觉。 随着后续可能在项目中使用大量使用C/C++代码,笔者意识到有必要巩固下自己的C/C++的基础,顺道给扫一下以前学习C/C++的时候留下的知识盲区。 后续可能会不定期更新一...

重温C与C++之构造函数

Posted: 18 May 2021 05:03 PM PDT

写在前面 相信做过Java、C++或者其他面向对象语言开发的朋友们一定对构造函数这个概念不陌生。以前初学C++的时候笔者看过几次《C++ Primer》这本书,但是每次都是走马观花式的快速阅读, 每次浏览完之后内心就会冒出两个字:就这?现如今回想起来真是图样图森破 。 学习最忌讳的就是心急如焚,砍柴不磨刀,所谓欲速则不达...

Redis:我是如何与客户端进行通信的

Posted: 21 Jun 2021 06:19 PM PDT

江湖上说,**天下武功,无坚不摧,唯快不破**,这句话简直是为我量身定制。 我是一个Redis服务,最引以为傲的就是我的速度,我的 QPS 能达到10万级别。 在我的手下有数不清的小弟,他们会时不时到我这来存放或者取走一些数据,我管他们叫做客户端,还给他们起了英文名叫 Redis-client。 有时候一个小弟会来的非常频繁,有...

Java技术专题-JVM研究系列(40)Java各种类型对象占用内存情况分析(下)

Posted: 21 Jun 2021 06:33 AM PDT

# 前提回顾 > **建议大家从[【Java技术专题-JVM研究系列(39)Java各种类型对象占用内存情况分析(上)】](https://my.oschina.net/liboware/blog/5083778 "【Java技术专题-JVM研究系列(39)Java各种类型对象占用内存情况分析(上)】")开始学习比较好,这样子会有一个承接和过度。根据前面的学习的内存占用计算规则,可...

解Bug之路-ZooKeeper集群拒绝服务

Posted: 21 Jun 2021 06:42 PM PDT

# 解Bug之路-ZooKeeper集群拒绝服务 ## 前言 ZooKeeper作为dubbo的注册中心,可谓是重中之重,线上ZK的任何风吹草动都会牵动心弦。最近笔者就碰到线上ZK Leader宕机后,选主无法成功导致ZK集群拒绝服务的现象,于是把这个case写出来分享给大家(基于ZooKeeper 3.4.5)。 ## Bug现场 一天早上,突然接到电话,说是ZooKeeper...

Qt 宣布 Apple Silicon 支持计划已经完成

Posted: 21 Jun 2021 05:48 PM PDT

Qt 官方发文表示,Qt on Apple Silicon 支持计划已经完成,并将在即将发布的 Qt 6.2 版本中提供。 文中表示,当 Apple 去年宣布使用其新的 Apple Silicon M1 芯片将 macOS 过渡到 arm64 时,Qt 开发人员立即开始进行原生支持的原型设计,最初是在开发人员过渡工具包 (DTK) 上,后来在生产硬件可用后。Rosetta 翻译层已经...

Facebook 联同 MIT 等发布研究手稿:解释深度学习实际工作原理的理论

Posted: 21 Jun 2021 05:17 PM PDT

Facebook、普林斯顿大学和麻省理工学院的 AI 研究人员近日宣布联合出版了一本名为《The Principles of Deep Learning Theory: An Effective Theory Approach to Understanding Neural Networks(深度学习理论原理:理解神经网络的一种有效理论方法)》的书籍。目前,该书的手稿已经公开提供。 根据介绍,在基本层面上,该...

njs 0.6.0 发布,nginx 的 JavaScript 脚本语言

Posted: 21 Jun 2021 03:50 PM PDT

njs 0.6.0 已发布,njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、能耗更低、更符合 nginx 应用场景的小虚拟机实现,可以理解为 nginx 为其实...

有开发过博客系统的吗,为了更好的收录设计方案是什么

Posted: 21 Jun 2021 05:44 AM PDT

目的:为了SEO收录更友好 1.采用前后端分离,动态数据js生成,但一篇博客静态页面估计就几个字了,大部分内容都要靠js来生成,而且meta部分也是靠js的,所以预测收录效果不是很好 2.依然采用前后端分离,但为每篇博客自动生成一篇静态页面,所有的内容都包括。缺点,文件多,占用内存会多很多,最主要的是动态内容发生修改...

No comments:

Post a Comment

End of Summer Sale ☀️😎

20% OFF Inside!🤯 ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏  ͏...