深圳幻海软件技术有限公司 欢迎您!

开发工具

  • 从RabbitMQ平滑迁移到RocketMQ技术实战

    作者|vivo互联网中间件团队-LiuRunyun大量业务使用消息中间件进行系统间的解耦、异步化、削峰填谷设计实现。公司内部前期基于RabbitMQ实现了一套高可用的消息中间件平台。随着业务的持续增长,消息体量随之增大,对消息中间件平台提出了更高的要求,此外在运维过程中也遇到了高可用难以保障,功能特

  • 基于微前端qiankun的多页签缓存方案实践

    作者|vivo互联网前端团队-TangXiao本文梳理了基于阿里开源微前端框架qiankun,实现多页签及子应用缓存的方案,同时还类比了多个不同方案之间的区别及优劣势,为使用微前端进行多页签开发的同学,提供一些参考。一、多页签是什么?我们常见的浏览器多页签、编辑器多页签,从产品角度来说,就是为了能够

  • Nest 的实现原理?理解了 Reflect Metadata 就懂了

    Nest是Node.js的服务端框架,它最出名的就是IOC(inverseofcontrol)机制了,也就是不需要手动创建实例,框架会自动扫描需要加载的类,并创建他们的实例放到容器里,实例化时还会根据该类的构造器参数自动注入依赖。它一般是这样用的:比如入口Module里引入某个模块的Module:复

  • SpringCloud—Spring Boot Admin微服务监控告警系统

    业务系统正常运行的稳定性十分重要,作为SpringBoot的四大核心之一,Actuator让你时刻探知SpringBoot服务运行状态信息,是保障系统正常运行必不可少的组件。spring-boot-starter-actuator提供的是一系列HTTP或者JMX监控端点,通过监控端点我们可以获取到系

  • POC模拟攻击利器—Nuclei入门

    引入Nuclei的缘由使用dependencycheck发现的问题,需要研发人员修复,研发人员要求复现问题!这个的确有难度不仅仅要了解cve相关bug的具体含义,还要模拟攻击,对于测试人员显然要求过高!凭借自己多年的各种测试工具调研经验,直觉告诉自己,应该有类似的工具,经过各种技术调研选择了Nucl

  • JDK 19 功能集冻结:Java 19 只有七个新特性

    从JDK19的概述页面​来看,JDK19处于 RampdownPhaseTwo 阶段,整个功能集已被冻结,将不再对JEP进行改动。Java19只有7个新特性:下面对新特性作简短的介绍:记录模式 (预览版)使用 记录模式 增强Java编程语言以解构记录

  • Uni-app + Vue3 + TS +Vite 创建项目步骤

    uni-app是公司常用的一个框架,随着vue3的普及,好多公司的项目都已经开始使用vue3+uni-app+vite开发项目,顺手记录和分享一下我在这过程中遇到的问题。一、npx与npm区别npm都很熟,可是与npm如此相似的npx是干嘛的呢?我们为甚要介绍npx?由于uni-app官方提供创建命

  • Jupyter notebook中五个有趣的魔法命令

    众​所周知,Jupyternotebook是一个交互式的Pythonshell,也就是IPython的封装版,非常适合用来进行数据分析和机器学习。Jupyternotebook中有很多实用且鲜为人知的功能,可以实现有趣的操作,这次举五个简单的例子。1.脚本代码写入本地文件%%file方法可以将脚本代

  • JS 中的事件委托是什么

    大家好,我是前端西瓜哥。今天我们来认识一下事件委托。所谓事件委托,就是将原本应该在当前元素绑定的事件,放到它的祖先元素上,让祖先元素来委托处理。事件流事件流指从页面中接收事件的顺序,也可理解为事件在页面中传播的顺序。事件流由两阶段组成:捕获事件冒泡事件我们通常用 addEventListe

  • JMeter—如何循环使用接口返回的多个值

    在用JMeter做接口测试的时候,经常会遇到这样一种情况:一个接口请求返回了多个值,然后下一个接口想循环使用前一个接口的返回值;第二种情况:只想循环请求前一个接口返回值中的随机不定长度的某一些值(并不想用全部的)。今天,我就和大家讲解一下这两种情况的其中一个情况,我们如何用JMeter来实现的。先说

  • 我们一起学习实模式和保护模式

    今天我们就系统的讲下实模式和保护模式。我觉得能很形象的说明保护模式存在的意义。先看下面这段代码。复制intmain(){int*addr=(int*)0;cli();//关中断while(1){*addr=0;addr++;}return0;}1.2.3.4.5.6.7.8.9.10.11.这段代码

  • 不用Swagger,那我用啥?

    1.OpenApi在正式学习SpringDoc之前,先给大家介绍一下OpenAPI。OpenApi是一个业界的API文档标准,是一个规范,这个规范目前有两大实现,分别是:SpringFoxSpringDoc其中SpringFox其实也就是我们之前所说的Swagger,SpringDoc则是我们今天要

  • Zadig 基于 OPA 实现 RBAC 和 ABAC 权限管理技术方案详解

    随着Zadig被越来越多企业用户和社区小伙伴采用,大家对企业级权限和安全性有更高的诉求,亟待一套权限管理方案。经过充分调研,我们最终确定了采用OPA(开放策略代理)开源策略引擎,事实上,它已经被Netflix,Pinterest和GoldmanSachs等公司用于生产,正在成为云原生策略管理的事实标

  • C 语言 typedef 和 #define 的用法、区别,以及陷阱

    一、typedef的用法在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,比如:复制typedefintINT;typedef(int*)pINT;typedefunsignedintuint32_t1.2.3.typedef可

  • 十个CSS实现元素居中的方法汇总

    在前端开发工程师的日常生活中,使用CSS使元素居中是很常见的,这也是面试中经常被问到的问题。也许你已经使用flex或absolute+transform来实现它,但你知道至少有10种方法可以做到元素居中吗?因此,在今天的文章中,我为大家整理了10个关于实现元素居中的CSS技巧,希望可以帮助你提升CS

  • 四种不应该使用箭头函数的情况

    箭头函数给我们的工作带来了极大的方便,但是它们有什么缺点呢?我们应该一直使用箭头函数吗?我们应该在哪些场景中停止使用箭头函数?现在,我们开始吧。箭头函数的一些缺点1、不支持参数对象在箭头函数中,我们不能像在普通函数中那样使用arguments对象。复制constfn1=()=>{console

  • Webview 和 React Native 中吸顶效果实现

    一、前言在跨端开发中,离不开一些吸顶的交互场景,可以参考淘宝或是京东类电商app中一些tab,在整个容器滑动的过程中,吸顶效果非常的连贯和丝滑的,当然这些tab可能是用native开发的,但是跨端应用也能实现很不错的吸顶效果,那么今天我们就来研究一下跨端开发是如何实现吸顶的。希望通过这篇文章,你将学

  • 手把手教你修改包名实现app分身

    一.前言哈喽,大家好,我是星期八,事情是这样婶的。我们可能都用过应用分身,但是你想自己实现应用分身吗?那就来看看吧!二.示例的app复制链接:https://pan.baidu.com/s/1Tdbh2X_n11Nd8GDgygyH9w提取码:s2s7复制这段内容后打开百度网盘手机App,操作更方便

  • 谈你对Zookeeper 选举原理的理解

    ​1.什么是Leader选举首先,Zookeeper集群节点由三种角色组成,分别是:Leader,负责所有事务请求的处理,以及过半提交的投票发起和决策。Follower,负责接收客户端的非事务请求,而事务请求会转发给Leader节点来处理,另外,Follower节点还会参与Leader选举的投票。O

  • 取代C++?谷歌开源编程语言Carbon,网友评价太真实了

    在编程语言的世界中,C++的地位举足轻重。在2022年5月的TIOBE编程语言排行榜中,C++位列第四。同样地,谷歌内部也在广泛使用C++。图源:https://hellogithub.com/report/tiobe/不过近日,在加拿大多伦多举办的CPPNorthC++大会上,谷歌工程师Chand

  • 为了实现CI/CD,先来定制一个Docker镜像

    背景计划把手头的项目逐步改造为基于Docker容器的方式发布,同时,项目中已经采用了云厂商提供的CI/CD自动化发布流水线。因此,为配合CI/CD操作,需要先针对项目构建一些发布的脚本,通过脚本来操作Docker镜像定制、Docker的启动和停止。在阅读和实践本篇文章之前,如果你还未搭建Docker

  • Go原生插件使用问题全解析

    一、导言本人在设计和落地基于Go原生插件机制的扩展开发产品时踩到了很多坑,由于这方面相关资料很少,因而借此机会做一个非常粗浅的总结,希望能对大家有所帮助。本文只说问题和解决方案,不读代码。二、一些背景知识2.1运行时通常而言,在计算机编程语言领域,“运行时”的概念和一些需要使用到vm的语言相关。程序

  • Java 是值传递还是引用传递?

    作者|王磊来源|Java中文社群(ID:javacn666)转载请联系授权(微信ID:GG_Stone)开篇先来曝答案,在Java 语言中,本质只有值传递,而无引用传递,解释和证明详见正文。说到值传递和引用传递我们不得不提到两个概念:值类型和引用类型。1、值类型通俗意义上来说,所谓的值类型

  • 用户身份标识与账号体系实践

    一、业务背景通常在系统研发的过程中,需要不断适配各种业务场景,扩展服务的领域和能力,一般会将构建的产品矩阵划分出多条业务线,以便更好地管理;由于各个业务线的数据入口和管理策略的不同,这样从不同路径下沉淀的数据,可能因为系统边界问题从而被孤立;如果用户数据被分裂,会因为数据不全面给分析决策带来误导;比

推荐阅读