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

开发工具

  • C++代码赏析:Map、Filter、Reduce

    概念出自Google的论文《MapReduce:simplifieddataprocessingonlargeclusters》,MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来

  • 基于Java UI开发的小游戏—推箱子(下)

    ​​想了解更多关于开源的内容,请访问:​​​​51CTO 开源基础软件社区​​​​https://ost.51cto.com​​前言本文将继续向大家介绍如何做UI界面美化,以及如何利用轻量级偏好数据库做数据的存储和读取。UI界面美化MainAbilitySlice我们可以看到,所有的界面都

  • 从业10多年,我总结了这几款程序员必备实用工具!

    优秀程序员之所以优秀的原因并不一定是他写代码的速度比别人快,而是他解决事情的效率比别人高、副业渠道比别人广,所以提供工作效率的方法并不需要我们样样精通,提高副业收入的办法也不需要我们挖空心思,有时候使用好的工具就能帮我们大大提升办事效率、提高副业收入。今天就来给大家分享一波程序员的实用工具!一、程序

  • 面试官问我有没有高并发架构经验,我慌的一批…

    一、的背景引入​这篇文章,我们聊聊大量同学问我的一个问题,面试的时候被问到一个让人特别手足无措的问题:你的系统如何支撑高并发?大多数同学被问到这个问题压根儿没什么思路去回答,不知道从什么地方说起,其实本质就是没经历过一些真正有高并发系统的锤炼罢了。因为没有过相关的项目经历,所以就没法从真实的自身体会

  • 为什么说IO密集型业务,线程数是CPU数的2倍?

    I/O密集型业务,线程数量要设置成CPU的2倍!也不知道这是哪本书的坑爹理论,现在总有一些小青年老拿着这样的定理来说教。说的信誓旦旦,毋庸置疑,仿佛是权威的化身。讨论时把这样的理论当作前提,真的是受害不浅。但可惜的是,这样的理论站不住脚。我只需要一个简单的反问,它就不攻自破:Tomcat的默认线程数

  • 数据流在消息队列遥测传输(MQTT)中的工作方式

    译者|李睿审校|孙淑娟人类在互联网和计算机上创建的数据并不总是准确的,人类打字、扫描、拍照或录音也并不总是可靠的。但是,如果机器上有传感器收集数据并能够与其他机器通信呢?如果有某种协议可以使医疗和个人设备、电器和其他电子设备相互发送和接收数据呢?例如,这样的系统意味着人们可以准确地跟踪他们库存中的物

  • MongoDB从入门到实战之.NET Core使用MongoDB开发ToDoList系统之后端项目框架搭建

    前言:ToDoList系统实战教程。本章节主要介绍的是如何快熟搭建一个简单明了的后端项目框架。YyFlight.ToDoList项目源码地址GitHub地址:https://github.com/YSGStudyHards/YyFlight.ToDoList为什么选择ASP.NETCore?首先请你

  • 聊聊在单选按钮上实现双击效果

    如果想让你的用户体验更加极致,可以考虑在对话框上的单选按钮上实现双击效果,以此作为”选中+确定”(或者是选中+下一页,或者是选中+完成等)的快捷方式。看看我们需要怎么做下面是一个对话框模板以及它对应的对话框窗口过程。上面展现了一个非常”乏味”的对话框,它允许用户从单选按钮中选择一项。请注意,如果在单

  • HashMap底层实现原理

    HashMap采用Node<K,V>数组来存储key-value对,每一个键值对组成了一个Node实体,Node类实际上是一个单向的链表结构,它具有Next指针,可以连接下一个Node实体。HashMap在JDK1.8之前和之后的区别JDK1.8之前,数组+链表存储结构缺点就是哈希函数很

  • 工作流引擎架构设计

    最近开发的安全管理平台新增了很多工单申请流程需求,比如加白申请,开通申请等等。最开始的两个需求,为了方便,也没多想,就直接开发了对应的业务代码。但随着同类需求不断增多,感觉再这样写可要累死人,于是开始了工作流引擎的开发之路。查找了一些资料之后,开发了现阶段的工作流引擎,文章后面会有介绍。虽然现在基本

  • 可以同时解析多个Binlog吗

    1.可以同时解析多个binlog吗2.innodb_buffer_pool_instances设置多少合适首先,答案是肯定的。其次,当我们采用这种方式解析binlog时 $mysqlbinlog-vvv--base64-output=decode-rows--start-position=

  • 让你更好使用 Typescript 的11个技巧

    学习Typescript通常是一个重新发现的过程。最初印象可能很有欺骗性:这不就是一种注释Javascript的方式吗,这样编译器就能帮助我找到潜在的bug?虽然这种说法总体上是正确的,但随着你的前进,会发现语言最不可思议的力量在于组成、推断和操纵类型。本文将总结几个技巧,帮助你充分发挥语言的潜力。

  • Ceph Dashboard 通过 Loki 配置集中日志

    ​我们要解决什么问题?Ceph作为一个分布式系统,通常会产生大量的日志。这些日志可以来自MON、MGR、OSD或Ceph的任何其他客户端。在大多数情况下,Ceph都能很好地处理其问题。自我修复是Ceph的特性之一。除此之外,CephDashboard对集群的可观察性做的也是非常好的。它通过使用ale

  • 转转测试环境治理的高效能实践

    转转测试环境治理历经3个版本的迭代,环境搭建耗时及资源占用大幅度下降,在此过程中积累了丰富的实践经验。本文将从测试环境的需求及背景出发,介绍转转测试环境治理各个版本的原理、技术、优缺点,毫无保留地将转转的实践经验分享给各位读者。1.背景及需求1.1系统架构的发展很久很久以前,在并发量较低时系统大多采

  • 用这四招优雅地实现 Spring Boot 异步线程间数据传递

    SpringBoot自定义线程池实现异步开发相信看过陈某的文章都了解,但是在实际开发中需要在父子线程之间传递一些数据,比如用户信息,链路信息等等比如用户登录信息使用ThreadLocal存放保证线程隔离,代码如下:复制/***@author公众号:码猿技术专栏*@description用户上下文信息

  • Groovy 语法类型知识详解最终篇

    1.介绍本篇是Typing相关知识的最后一篇。介绍关于类型的闭包和类型推断关系,以及最终的类型静态编译相关知识点。2.闭包和类型推断类型检查器对闭包执行特殊的推断,在一边执行额外的检查,在另一边提高流畅性。2.1返回类型推断类型检查器能够做的第一件事是推断闭包的返回类型。下面的例子简单地说明了这一点

  • JPA实体类注解,看这篇就全会了

    哈喽,大家好,我是指北君。今天给大家介绍一下JPA实体类中的注解,希望能对大家有帮助。基本注解@Entity标注于实体类声明语句之前,指出该Java类为实体类,将映射到指定的数据库表。name(可选):实体名称。缺省为实体类的非限定名称。该名称用于引用查询中的实体。不与@Table结合时,表名默认为

  • SpringBoot整合xxl-Job分布式定时任务

    一、前言定时任务有很多种,有一些大的框架也有一些简单的实现。比如常见的:JDK的Timer和TimerTaskQuartz异步任务调度框架分布式定时任务XXL-JOBSpringTask注解@Scheduled小编也就知道这些,欢迎大佬补充哈!!今天小编就以现在比较火的分布式定时任务xxl-job,

  • 不规范使用ThreadLocal导致的bug,说多了都是泪

    ThreadLocal一般用于线程间的数据隔离,通过将数据缓存在ThreadLocal中,可以极大的提升性能。但是,如果错误的使用Threadlocal,可能会引起不可预期的bug,以及造成内存泄露。因为线程重用导致的信息错乱的bug有时我们会在一个接口中缓存某些数据到ThreadLocal中,但是

  • 嵌入式软件的设计模式

    1、嵌入式软件与设计模式思从深而行从简软件开发,难的不是编写软件,而是编写功能正常的软件。软件工程化才能保证软件质量和项目进度,而设计模式使代码开发真正工程化,设计模式是软件工程的基石。所谓设计模式就是对常见问题的通解,合理地运用设计模式可以很好地解决很多问题,每种模式针对一个通用问题,以及该问题的

  • 什么是真正的敏捷开发?敏捷开发与瀑布开发有何不同

    什么是真正的敏捷开发?敏捷开发与瀑布开发有何不同。从本质上讲敏捷开发的一个重要目标是建立持续价值交付的能力。这种能力最终必须服务于业务的创新,促进业务的成功。敏捷开发的目标——更早的交付我们经常会说敏捷模式,那什么开发模式是不敏捷呢?我们通常说“瀑布”是不敏捷的。瀑布开发模式把开发分成一系列阶段,如

  • React + TypeScript:如何处理常见事件?

    1.onClickonClick 是用的最多的事件之一,这里主要列举两种类型的 onClick 事件:button按钮的onClick事件;任意元素的的onClick事件。下面先来看看按钮的 onClick 事件,当点击按钮时,在页面显示按钮的名称:

  • MDN 里暂时还查不到的 Navigation API

    路由守卫相信大家对路由守卫都不陌生,其实就是在页面当前发生导航变化时,在导航变化的前中后时机去做一些其他具体的事情。SPA&HistoryAPI而在前端常见的业务场景,单页应用即SPA中,路由守卫功能则显得至为重要。目前主流的在SPA中实现路由守卫功能的方法,则是借助HistoryAPI来实

  • 融合系统思维和设计思维解决复杂问题(下篇)

    作者 | 汪泽远&马彦青在《​​融合系统思维和设计思维解决复杂问题(上篇)​​》中,我们为大家介绍了一种新的,可以应用于创新的思考方式,并强调了系统思维与设计思维在理念层面的差异。本文,我们将在实践层面展开,讲一讲如何在具体创新实践中融入系统思维。值得说明的是,这里强调的

推荐阅读