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

开发工具

  • 前端日志管理模块的设计与实现

    一、问题背景在项目中,我们会频繁用到 ​​console.log()​​ 来输出一些关键信息到控制台中,有助于开发调试,以及问题的排查,待项目上线后,这些调试日志又得及时清除。同时在前端质量要求下,我们会做“前端埋点”,用于远程上报一些关键行为信息,用于在出问题时还原用户的操作路

  • 消息服务:MQ使用场景与选型对比

    在前面的文章中,我们实现了用户微服务、商品微服务和订单微服务之间的远程调用,并且实现了服务调用的负载均衡。也基于阿里开源的Sentinel实现了服务的限流与容错,并详细介绍了Sentinel的核心技术与配置规则。简单介绍了服务网关,并对SpringCloudGateway的核心架构进行了简要说明,也

  • 生产环境一个问题让我直接“懵”了

    前天发完版本好不容易休息一下,又遇到一个问题,项目组反馈说RocketMQ的一个消费组一条消息,消费了两次,但两者之间的间隔超过了10个小时,现象如下图所示:这是为什么呢?两者之间相差了差不多10个多小时,是不是这条消息重复消费了16次,但从日志中并没有打印出16次消息题,只打印了两条消息,从日志角

  • 三个注解,优雅的实现微服务鉴权

    实现思路前面的几篇文章陈某都是将鉴权和认证统一的放在了网关层面,架构如下:微服务中的鉴权还有另外一种思路:将鉴权交给下游的各个微服务,网关层面只做路由转发。这种思路其实实现起来也是很简单,下面针对网关层面鉴权的代码改造一下即可完成:实战干货!SpringCloudGateway整合OAuth2.0实

  • 如何在 Flutter 中构建增强现实应用

    AR应用程序为我们在相机上的体验添加数据或视觉效果。流行的示例包括Instagram过滤器、Snapchat过滤器、各种地图应用程序等。AR允许用户将虚拟对象放置在现实世界中,然后与它们进行交互。AR应用程序将(我认为)在游戏中特别流行——像MicrosoftHololens和GoogleGlass

  • 从Go log库到Zap,怎么打造出好用又实用的Logger

    日志无论对于程序还是程序员都非常重要,有多重要呢,想要长期在公司健健康康的干下去就得学会阶段性划水,阶段性划水的一大关键的就是干活快过预期但是装作。。。不对,这个开头不对劲,下面重来。日志无论对于程序还是程序员都非常重要,程序员解决问题的快慢除了经验外,就是看日志能不能有效地记录问题发生的现场以及上

  • 两个简单工具,彻底解决GitHub访问慢的问题

    哈喽,大家好。最近给大家分享了不少Github上优秀的AI项目,不少朋友反映GitHub访问太慢,或者图片打不开的问题。针对这一问题,很多朋友会通过架梯子解决,但我觉得大可不必。对于大多数人来说,架梯子成本大且不安全。今天我就给大家分享两个我用过的、超级简单的工具,让大家访问GitHub如丝般顺滑。

  • 程序员都知道的vuex的冷门小技巧,超好用

    当访问某个数据项嵌套太深了,优化一下访问的方式我相信每一个程序员都会使用vuex吧,首先我承认vuex真的超好用,尤其是在项目特别大的时候,代码会看起来非常的简洁,也方便维护,但是项目大了,vuex的公共数据的嵌套也会越来越深,在组件中使用的时候就会像下面这张图一样,我要一直点啊点,才能拿到最里面的

  • JQuery 已经是时代的眼泪了吗

    作为差点一统全球门户网站的前端工具,jQuery曾在Web2.0初兴之时风头无两,然而随着前端技术的不断演进与浏览器底层标准的统一,jQuery却逐渐成为一些网站眼中的“技术债”。 日前,英国政府网站 GOV.UK 删除其网站上所有前端应用程序依赖项jQuery。删除之

  • T前线 | 专访腾讯AILab:将成果由“点”到“线”,实验室不止于实验

    嘉宾:史树明撰稿:莫奇审校:云昭“大多数研究工作往往是围绕一个点展开,而点状的成果很难直接被用户所用。”腾讯 AILab 自然语言处理中心总监史树明说道。过去十余年间,人工智能(AI)经历了复兴,其中很显著的技术进步也发生在自然语言处理(NLP)领域。NLP技术的进步使得机器翻译

  • 一篇文章搞定Java字符串​的基本操作知识

    大家好,我是我是Java进阶者,今天给大家分享Java字符串的基本操作知识。一、字符串的转换1、在开发过程中,有时需要对字符串的转换操作,例如字符串的字母大小写转换把”abc”转换成”ABC”,基本数据类型转换成字符串、字符数组转换成字符串,字符串转成数组的形式等。2、字符串转换的方法:String

  • 如何避免 JavaScript 中的内存泄漏?

    大家好,我是CUGGZ。SPA(单页应用程序)的兴起,促使我们更加关注与内存相关的JavaScript编码实践。如果应用使用的内存越来越多,就会严重影响性能,甚至导致浏览器的崩溃。下面就来看看JavaScript中常见的内存泄漏以及如何避免内存泄漏。一、什么是内存泄漏?JavaScript就是所谓的

  • 基于业务驱动的前端性能有效实践案例

    一、背景1.1.前端性能优化的业务意义前端的本质价值是什么?我认为是  给用户创造良好的交互体验 。 前端性能对用户体验、对业务跳失率的影响,在业界已有共识,不言而喻。 根据Google的数据,如果移动站点的加载时间超过3秒,53%的用户会放弃访问。

  • C/C++ 单元自动化测试解决方案实践

    作者|vivo互联网服务器团队-LiQingxinC/C++开发效率一直被业内开发人员诟病,单元测试开发效率也是如此,以至于开发人员不愿花时间来写单元测试。那么我们是不是可以通过改善编写单元测试的效率来提升项目的测试用例覆盖率?本文主要介绍如何利用GCC插件来实现提升C/C++开发者的单元效率工具解

  • 如何使用k6做性能测试

    作者| 瞿勋和涂佳瑶背景项目的目标是为客户交付一个ToC的APP,其后端是基于RESTful的微服务架构,同时后端还采用了Protobuf协议来提高传输效率。在最终上线之前,我们需要执行性能测试以确定系统在正常和预期峰值负载条件下的表现,从而识别应用程序的最大运行容量以及存在的瓶颈,并针对

  • Python的哪个Web框架学习周期短,学习成本低?

    知乎上有人问,Python的哪个Web框架学习周期短,学习成本低?很多人推荐Flask,老牌轻量级web框架,确实是初学者的首选。这几天我在Github上看到FastApi,觉得比Flask更轻量。FastApi是这两年异军突起的网红web框架,适合新手快速入门。。总的来说,FastAPI有三个优点

  • 三种方法+三种选型,用分布式锁还怕啥并发问题呀?

    一、背景并发问题是电商系统最常见的问题之一,例如库存超卖、抽奖多发、券多发放、积分多发少发等场景;之所以会出现上述问题,是因为存在多机器多请求同时对同一个共享资源进行修改,如果不加以限制,将导致数据错乱和数据不一致性;解决并发问题的方式有很多,例如:队列、异步、响应式、锁都可以;由于当前互联网都是分

  • 数据权限,一个注解搞定!

    ​​上篇文章​​松哥和大家介绍了SpringSecurity中常见的八个权限注解,每一个权限注解都有它自己的使用场景,在这些权限注解中,有两个是后置的权限注解:@PostAuthorize和@PostFilter,这两个都是在目标方法执行完毕之后进行权限处理,具体的用法小伙伴们可以参考上篇文章,这里

  • 微软升级Power Platforms功能,低代码开发提高交付效率

    近日,微软在面向Windows和Azure云软件工程师和Web开发者的Build2022大会上,公布了一系列对PowerPlatform的功能,旨在让商业用户和专业开发人员的生活更轻松。微软PowerPlatform是一组用于应用开发和商业智能自动化的低代码/无代码工具。低代码和无代码是指以最少或者

  • 反爬篇 | 手把手教你处理 JS 逆向之 CSS 偏移

    本篇文章将聊聊另外一种常见的反爬方案,即:「CSS偏移」。CSS偏移反爬是利用「CSS样式」对网页元素进行一次自定义的排序,最后让网页以正确的数据展示出来。下面我们通过一个简单的实例,讲解应对CSS偏移网站常规解决方案。目标对象:aHR0cDovL3d3dy5wb3J0ZXJzLnZpcC9jb25

  • 无差错量子计算机或成现实

    据25日发表在《自然》杂志上的论文,由奥地利因斯布鲁克大学实验物理系的托马斯·蒙兹、德国亚琛工业大学的马库斯·穆勒和德国于利希研究中心领导的团队展示了容错量子计算的基本构建模块,首次成功地实现了对两个逻辑量子位的一组计算操作,可以用来实现任何可能的操作,意味着无差错量子计算机或将成为现实。量子计算机

  • AOP 那点事儿(续集)

    本文是《​​AOP那点事儿​​》的续集。在上篇中,我们从写死代码,到使用代理;从编程式SpringAOP到声明式SpringAOP。一切都朝着简单实用主义的方向在发展。沿着SpringAOP的方向,RodJohnson(老罗)花了不少心思,都是为了让我们使用Spring框架时不会感受到麻烦,但事实却

  • 前端质量|基于业务驱动的前端性能有效实践案例

    作者| 钱文玲(悠酱)一、背景1.前端性能优化的业务意义前端的本质价值是什么?我认为是给用户创造良好的交互体验。前端性能对用户体验、对业务跳失率的影响,在业界已有共识,不言而喻。根据Google的数据,如果移动站点的加载时间超过3秒,53%的用户会放弃访问。加载时间从1s延长到3s时,跳失

  • 快醒醒,带你穿过原型和原型链的迷雾

    1.写在前面我们知道在面向对象编程的语言中,有一句统筹全局的中心句--”万物皆对象“,原型和原型链也是基于这个基础理解的。对于初学js的继承机制--”原型“和”原型链“这两个概念的理论时,总是忘了记、记了忘。所以死记硬背真的是没得用的,得深入理解其背后的设计思想,得理解加记忆,如虎添翼。至于为什么这

推荐阅读