系统 代码 企业 信息

地图下载器 002 根据下载范围获取要下载的瓦片信息

1、瓦片信息的存储方式设计 下载地图瓦片的第一步,就是要计算出要下载哪些地图瓦片。根据上篇内容,我们了解了谷歌瓦片组织的理论知识,现在就需要写代码实现这些内容。 一般情况下,我们会选择一个矢量面文件作为下载的范围,需要计算出这个矢量面数据覆盖了哪些瓦片,并存储起来。存储的时候,需要记录每个瓦片的x、 ......
瓦片 范围 地图 信息 002

.Net开发的系统安装或更新时如何避免覆盖用户自定义的配置

我们开发的系统,有时候会包含一些配置信息,需要用户在系统安装后自己去设置,例如我们有一个GPExSettings.xml文件,内容如下。 <GPExSettings ArcPythonPath="C:\Python27\ArcGIS10.8\python.exe" IsUseArcPython="F ......
用户 系统 Net

企业应用架构研究系列二十五:IdentityServer4 认证服务搭建

IdentityServer4 更新了开源协议,曾经想替换它,不在使用IdentityServer4 ,但是后来,研究来研究去,发现IdentityServer4 的功能实在是强大,设计体系完整,随着最后版本的升级,现在 IdentityServer4 已经可以在.Net Core 6.0 环境中进 ......

企业应用架构研究系列十三:整合EFCore&Dapper 通用ORM框架EFDapper

EntityFrameworkCore是微软官网提供的ORM框架,是轻量化、可扩展、开源和跨平台的数据访问技术框架,但是在.Net 开发圈的评论却褒贬不一。很多人认为EFCore 执行的效能比较差,很多复杂的查询场景很难实现,也有很多人认为,EFCore 开发简单,在中小型项目中,能够快速的实现业务 ......
架构 框架 EFDapper EFCore Dapper

企业应用架构研究系列二十四:SQL Server 数据库调优之XEvent 探查器

如果入职一些中小型公司,往往需要接手一些很“坑”的项目,到底多坑就不牢骚了,只讲一下,如果破解这些历史遗留的项目问题。项目代码可能短时间无法进行通读研究,我们就需要从底层数据库进行挖掘问题,有经验的老开发工程师,他会开启Sql Server Profiler 这个功能,进行语句的跟踪。这个是一个很好 ......
架构 数据库 数据 Server XEvent

Serilog日志同步到redis中和自定义Enricher来增加额外的记录信息

Serilog 日志同步到redis队列中 后续可以通过队列同步到数据库、腾讯阿里等日志组件中,这里redis库用的新生命团队的NewLife.Redis组件 可以实现轻量级消息队列(轻量级消息队列RedisQueue (newlifex.com)),也可以自行替换熟悉的组件 类库目录 该类库需添加 ......
增加额 Enricher Serilog redis 日志

安装Ubuntu系统到中国移动电视盒子

根据B站的视频资料,貌似这个盒子的性价比要比树莓派高一些,所以做了这个安装实验。新年伊始,armbian库也加紧升级,感觉大家都在想尽一切办法告别3年疫情给大家带来的伤害。 B站视频推荐把系统安装在盒子的内部,但是家的盒子平时还连接着电视,如果安装到内部,就会破坏原有的Android系统,就无法看电 ......
中国移动 盒子 电视 Ubuntu 系统

【Azure 存储服务】.NET7.0 示例代码之上传大文件到Azure Storage Blob (一)

问题描述 在使用Azure的存储服务时候,如果上传的文件大于了100MB, 1GB的情况下,如何上传呢? 问题解答 使用Azure存储服务时,如果要上传文件到Azure Blob,有很多种工具可以实现。如:Azure 门户, Azure Storage Explorer, 命令行工具 az copy ......
Azure 示例 Storage 代码 文件

dotnet 代码优化 聊聊逻辑圈复杂度

本文属于 dotnet 代码优化系列博客。相信大家都对圈复杂度这个概念很是熟悉,本文来和大家聊聊逻辑的圈复杂度。代码优化里面,一个关注的重点在于代码的逻辑复杂度。一段代码的逻辑复杂度越高,那么维护起来的难度也就越大。衡量代码的逻辑复杂度的一个维度是通过逻辑圈复杂度进行衡量。本文将告诉大家如何判断代码... ......
复杂度 逻辑 代码 dotnet

Spring Boot通过Actuator显示git和build的信息

1 简介 为了更好的版本控制和问题定位,我们需要知道正在运行的应用是什么版本,什么时候打包的,Git的相关信息等。通过/actuator/info可以帮助我们获取这些信息。 2 配置 首先要有actuator的依赖: <dependency> <groupId>org.springframework ......
Actuator Spring build 信息 Boot

MybatisPlus实战技术分享合集 代码生成器 多表连接查询 分组查询 一口气干完

一、MybatisPlusMax简介 MybatisPlusMax是MybatisPlus的增强包,秉承只拓展不修改的理念,对MybatisPlus做增强。 正如MybatisPlus是对MyBatis的增强,MybatisPlusMax是对MybatisPlus的增强,拓展理念一脉相承。 Myba ......

[apue] Unix 系统数据文件那些事儿

如何免密 ssh 登录空密码账户?getpwent 为何会返回比 /etc/passwd 文件更多的内容?同样是修改附加组 ID,usermod -G 和 gpasswd -a/-d 有何区别?/etc/networks 有什么用处?gethostbyname / getservbyname 和 g... ......
事儿 文件 数据 系统 apue

使用动态输出打印内核的DEBUG信息

简介 printk()是很多嵌入式开发者喜欢用的调试手段之一,但是,使用printk()每次都要重新编译内核,很不方便。使用动态输出在不需要重新编译内核的情况下,方便的打印出内核的debug信息。 要开启动态输出,内核需要添加CONFIG_DYNAMIC_DEBUG。开启宏之后,pr_debug() ......
内核 动态 DEBUG 信息

ffmpeg第8篇:使用ffprobe采集文件信息

1、 前言 ffprobe是ffmpeg的其中一个模块,主要用于查看文件信息,咱们知道一个MP4文件其实不仅仅包含了音视频数据,还有如元数据等其它信息,但是实际上咱们关心的往往是音视频数据部分,今天来看下如何使用ffprobe来获取音视频信息。 先看看ffprobe的帮助信息 ffprobe -v ......
ffprobe 文件 ffmpeg 信息

鸿蒙系统应用开发之开发准备

Hi,欢迎大家在有空的时候做客【江涛学编程】,这里是2023年的第10篇原创文章,今天我们来聊一聊鸿蒙系统应用开发之前,要做什么准备工作,如下图所示,我们要做的就是安装DevEco Studio,然后配置开发环境。 老规矩,拍拍手👏,上菜。 安装DevEco Studio 首先我们打开链接http ......
鸿蒙 应用开发 系统

鸿蒙系统应用开发之入门解说

Hi,欢迎大家在有空的时候做客【江涛学编程】,这里是2023年的第11篇原创文章,同学,我们又见面啦,今天我们继续聊下上一期讲的那个话题 鸿蒙系统应用开发入门解说 老规矩,拍拍手👏,上菜。 模拟器选型解说 开始之前我们先看一张图,从中提炼出三个观点,第一个,你是个JSer,你只需要关心eTs和JS ......
鸿蒙 应用开发 系统

请求量突增一下,系统有效QPS为何下降很多?

原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 最近我观察到一个现象,当服务的请求量突发的增长一下时,服务的有效QPS会下降很多,有时甚至会降到0,这种现象网上也偶有提到,但少有解释得清楚的,所以这里来分享一下问题成因及解决方案。 队列延迟 目前的Web服务器, ......
系统 QPS

我总结了写出高质量代码的12条建议

前言 工作这么多年,见过许许多多的代码,有的写的好,有的写的很糟糕。好的代码不外乎要做到你的代码可阅读、可维护、可扩展。说难不难,说简单也不简单,那么本文我将总结工作这么多年该如何写出整洁代码的一些实践。 欢迎关注个人公众号【JAVA旭阳】交流学习 1.使用清晰且有意义的命名 干净代码最重要的原则之 ......
高质量 代码 建议

企业商业增长战略梳理

一、SLG(Sales-led Growth)战略 以销售为主导的增长策略,依赖于公司的销售团队成为收入的关键驱动力。 如果你专注于 B2B 并拥有复杂的产品或服务,销售周期可能会变得相当长,并且客户通常需要动手指导才能获得成功。那就可以通过以销售为主导的方法和分配给潜在客户的特定销售人员,你的团队 ......
战略 商业 企业

滑动窗口滤波器原理分析及详细代码讲解实现

前言 在嵌入式开发程序中涉及数据采样如传感器采样,AD采样等如果直接读取信号后,将信号值直接参与后续逻辑处理,若程序无软件滤波,会导致静态或者动态采样时: 1、信号曲线相对没有那么平滑。 2、同时可能存在脉冲干扰导致逻辑判断错误。 在信号处理系统中,输入信号通常含有各种噪声和干扰。为对信号进行准确的 ......
滤波器 原理 代码

liunx系统安装Redis详细步骤

#liunx系统安装Redis详细步骤 官网下载Redis安装包 官网下载,直接进官网下载就可以,默认大家都下载完了。 使用工具将redis安装包拖入liunx系统 创建Redis存放目录 mkdir /usr/local/redis 解压到redis存放目录 tar -zxvf redis-7.0 ......
步骤 系统 liunx Redis

C++ 编译依赖管理系统分析以及 srcdep 介绍

C++ 编译依赖管理系统分析以及 srcdep 介绍 如果用 C++ 写一个中小型软件,有要用到很多第三方库的话,相信不少人会觉得比较麻烦。很多新兴的语言都有了统一的依赖管理系统和构建系统,但是 C/C++ 界一直没有比较正统的。(也不奇怪,连统一的 string 都没有,怎么可能有统一的依赖、构建 ......
管理系统 srcdep 系统

微机原理与系统设计笔记1 | 绪论与数制表示

打算整理汇编语言与接口微机这方面的学习记录。 参考资料 西电《微机原理与系统设计》周佳社 西交《微机原理与接口技术》 课本《汇编语言与接口技术》王让定 小甲鱼《汇编语言》 1. 介绍 2022年春学习了MIPS视角下的计算机体系结构与组成原理,同年夏自学了操作系统(科普级别的了解),汇编语言是学习操 ......
绪论 微机 原理 笔记 系统

代码影响范围工具探索

作者:京东零售 田创新、耿蕾 一、背景 1.祖传代码不敢随意改动,影响范围无法评估。并且组内时常有因为修改了某块代码,导致其他业务受到影响,产生bug,影响生产。 2.研发提测完成后,测试进入测试后经常会向研发询问本次需求改动影响范围,以此来确定测试用例,以达到精准测试,提升整个需求的质量,缩短交付 ......
范围 代码 工具

Vue3 企业级优雅实战 - 组件库框架 - 9 实现组件库 cli - 上

上文搭建了组件库 cli 的基础架子,实现了创建组件时的用户交互,但遗留了 cli/src/command/create-component.ts 中的 createNewComponent 函数,该函数要实现的功能就是上文开篇提到的 —— 创建一个组件的完整步骤。本文咱们就依次实现那些步骤。(友情 ......
组件 实战 框架 企业 Vue3

Java开发学习(五十)----MyBatisPlus快速开发之代码生成器解析

1、代码生成器原理分析 造句: 我们可以往空白内容进行填词造句,比如: 在比如: 观察我们之前写的代码,会发现其中也会有很多重复内容,比如: 那我们就想,如果我想做一个Book模块的开发,是不是只需要将红色部分的内容全部更换成Book即可,如: 所以我们会发现,做任何模块的开发,对于这段代码,基本上 ......
生成器 MyBatisPlus 代码 Java

[Linux Kernel 源码分析] 通过vconfig配置vlan的系统调用/驱动流程分析

By YuCloud (蓝天上的云℡ - 博客园 https://www.cnblogs.com/yucloud/) 转载请注明出处 vconfig源码分析 vlan/vconfig.c at master · Distrotech/vlan (github.com) https://github. ......
源码 流程 vconfig Kernel 系统

Springboot整合策略模式概念->使用场景->优缺点->企业级实战

一、前言 策略模式可能是在工作中使用最多的,也是在面试中最常提到的,代码重构和优化的必备! 小编之前也是一直说,其实没有真正的实战;最近有了机会实战了一下,来分享一下使用心得和在企业级的使用! 二、策略模式 1. 什么是策略模式 策略模式,英文全称是 Strategy Design Pattern。 ......
优缺点 Springboot 实战 场景 概念

前端使用工具规范commit信息

前言 通过工具规范git提交信息也是工程化的一部分,在前端领域有一些工具为我们提供了相关功能,在这里做一下使用总结。 commitlint commitlint是什么? 就像eslint用来检查js代码是否标准,commitlint用来检查提交信息是否满足固定格式的工具。 同样,commitlint ......
前端 工具 commit 信息

vivo 低代码平台【后羿】的探索与实践

本文主要从前后端分离的低代码方案、自研高性能渲染引擎、高效的可视化配置方案、千亿级内容投放、低代码如何与传统开发共存等五个维度vivo在低代码平台方面的实践经验,其中也会涉及到动态交互如何运用低代码来编排和我们在提高配置效率方面的全面探索。 ......
代码 平台 vivo