java技术圈 为您找到相关结果 20

再探go modules:使用与细节 - apocelipes

还有半个月go1.12就要发布了。这是首个将go modules纳入正式支持的稳定版本。 距离go modules随着go1.11正式面向广大开发者进行体验也已经过去了半年,这段时间go modules也发生了一些变化,借此机会我想再次深入探讨go modules的使用,同时对这个新生包管理方案做一些思考。 本文索引 版本控制和语义化版本 控制包版本 语义化版本 何谓语义化 为何使用语义化版本 语义化版本带来的影响 一点思考 replace的限制 本地包替换 顶层依赖与间接依赖 限制 发布go modules go.sum不是锁文件 使用vendor目录 注意包的版本 小结 版本控制和语义化版本 包的版本控制总是一个包管理器绕不开的古老话题,自然对于我们的go modules也是这样。 我们...阅读全文

博文 2019-05-24 07:59:15 博客园

golang包管理解决之道——go modules初探 - apocelipes

golang的包管理是一直是为人诟病之处,从golang1.5引入的vendor机制,到准官方工具dep,目前为止还没一个简便的解决方案。 不过现在go modules随着golang1.11的发布而和我们见面了,这是官方提倡的新的包管理,乃至项目管理机制,可以不再需要GOPATH的存在。 go module的初始化 现在modules机制仍在早期阶段,所以golang提供了一个环境变量“GO111MODULE”,默认值为auto,如果当前目录里有go.mod文件,就使用go modules,否则使用旧的GOPATH和vendor机制,因为在modules机制下go get只会下载go modules,这一行为会在以后版本中成为默认值,这里我们保持auto即可,如果你想直接使用modules...阅读全文

博文 2019-05-24 07:59:00 博客园

你所不知道的,华为项目管理之道!

众所周知,沟通在项目管理中很重要,但即便优秀如华为,在项目初期的时候,也吃过很多沟通不畅的亏。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200414144443868.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxMTM3NDkz,size_16,color_FFFFFF,t_70) 今天这篇文章就来解读一下,华为项目管理的有效沟通是怎么做的,以及在项目之余,华为日常工作中的高效沟通方法。希望对你有帮助~ 一、缺乏有效沟通对项目是灾难性的 在华...阅读全文

UML 各种图总结精华

UML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。下面将对UML的九种图+包图的基本概念进行介绍以及各个图的使用场景。一、基本概念 如下图所示,UML图分为用例视图、设计视图、进程视图、实现视图和拓扑视图,又可以静动分为静态视图和动态视图。静态图分为:用例图,类图,对象图,包图,构件图,部署图。 动态图分为:状态图,活动图,协作图,序列图。 1、用例图(UseCase Diagrams): 用例图主要回答了两个问题:1、是谁用软件。2、软件的功能。从用户的角度描述了系统的功能,并指出各个功能的执行者,强调用户的使用者,系统为执行者完成哪些功能。 2、类图(Class Diagrams): 用户根...阅读全文

博文 2020-04-12 09:17:10 知乎

Windows线程管理和调度机制概述_m_buddy的博客

1. 线程管理 (1)线程,有时被称为轻量级进程,是程序执行流的最小单元。一个标准的线程由线程ID,当前指令指针,寄存器集合和堆栈组成。另外,线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。 (2)进程(Process)定义了一个执行环境,包括它自己私有的地址空间、一个句柄表,以及一个安全环境;线程(thread)则是一个控制流,有自己的调用栈(call stack),记录了执行的历史。每个进程都包含一个或多个线程,当进程被初始化创建时系统为该进程创建第一个线程;当最后一个线程结束时,进程也随之结束。 说道这里就需要说到线程的工作模式: 进程中的线程既可以在用户模式下运...阅读全文

博文 2020-07-14 02:25:32 CSDN博客_windows线程调度

物联网协议Coap协议介绍

COAP协议简介 Coap(Constrained Application Protocol)是一种在物联网世界的类web协议,它的详细规范定义在 RFC 7252。COAP名字翻译来就是“受限应用协议”,顾名思义,使用在资源受限的物联网设备上。物联网设备的ram,rom都通常非常小,运行TCP和HTTP是不可以接受的。 COAP协议特点 1 COAP协议网络传输层由TCP改为UDP。 COAP协议层 2 它基于REST,server的资源地址和互联网一样也有类似url的格式,客户端同样有POST,GET,PUT,DELETE方法来访问server,对HTTP做了简化。 3 COAP是二进制格式的,HTTP是文本格式的,COAP比HTTP更加紧凑。 4 轻量化,COAP最小长度仅仅4B,一个...阅读全文

Git恢复之前版本的两种方法reset、revert(图文详解)_游笑天涯

2019/7/27 修改更新 一、问题描述 在利用github实现多人合作程序开发的过程中,我们有时会出现错误提交的情况,此时我们希望能撤销提交操作,让程序回到提交前的样子,本文总结了两种解决方法:回退(reset)、反做(revert)。 二、背景知识 git的版本管理,及HEAD的理解 使用git的每次提交,Git都会自动把它们串成一条时间线,这条时间线就是一个分支。如果没有新建分支,那么只有一条时间线,即只有一个分支,在Git里,这个分支叫主分支,即master分支。有一个HEAD指针指向当前分支(只有一个分支的情况下会指向master,而master是指向最新提交)。每个版本都会有自己的版本信息,如特有的版本号、版本名等。如下图,假设只有一个分支: 三、解决方法 方法一:git re...阅读全文

博文 2020-07-21 12:51:38 CSDN博客_git revert

grafana登录失败无法从cookie中获取用户信息_grafana error while signing in user_独步秋风的博客

背景 grafana从版本6.3升级到7.2.1,通过chrome浏览器无法登录,需要清除浏览器缓存会话才可以正常登录,这样用户体验并不好,不可能使得所有用户都要在登录前都清除一下浏览器缓存会话。 chrome 版本信息 Google Chrome86.0.4240.198 (正式版本) (64 位) (cohort: Stable)修订版本d8a506935fc2273cfbac5e5b629d74917d9119c7-refs/branch-heads/4240@{#1431}操作系统Windows 10 OS Version 1909 (Build 18363.1198)JavaScriptV8 8.6.395.25Flash32.0.0.453 服务端报错信息 t=2020-11-2...阅读全文

博文 2023-09-06 09:03:16 CSDN博客

云安全CIA:关键信息保证的三大支柱

本文分享自天翼云开发者社区《云安全CIA:关键信息保证的三大支柱》,作者:每日知识小分享随着云计算的迅速普及,云安全问题越来越受到关注。云安全涉及的范围广泛,涵盖了云端数据中心的物理安全、网络安全、数据安全、应用安全等多个方面。而在这些安全问题中,CIA原则是云安全中最为核心的部分。CIA原则由机密性(Confidentiality)、完整性(Integrity)和可用性(Availability)三个关键信息保证组成,是衡量云服务提供商是否能够满足客户数据安全需求的重要标准。本文将从理论和实践两个方面对云安全的CIA原则进行详细解析。一、机密性(Confidentiality)机密性是指确保云服务用户的数据不被非授权访问或泄露。在云环境中,机密性通常涉及到数据加密、访问控制等措施。1.数据...阅读全文

[完结19章]SpringBoot开发双11商品服务系统

今天给大家分享一下关于SpringBoot开发双11商品服务系统的整个流程,我将深度还原大厂实习期技术成长全流程,让你收获大厂项目开发全流程与实战经验,具备应对大流量场景问题的解决能力,全面助力提升实习/转正/跳槽表现力与成功率。 以下是参考资料下载: 网盘地址:https://pan.baidu.com/s/1QNf3FbzlswJd_DU3FC64nw 提取码:q61x 腾讯微云下载地址:https://share.weiyun.com/o6TKslZV 密码:qn8bim Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spr...阅读全文

博文 2023-11-22 14:46:53 kaidnxhd2023

QUIC协议在天翼云CDN全站加速产品中的应用

本文分享自天翼云开发者社区《QUIC协议在天翼云CDN全站加速产品中的应用》,作者:郭****迎1、什么是QUIC协议QUIC全称:Quick UDP Internet Connections,是一种实验性传输层网络协议,提供与TLS/SSL相当的安全性,同时具有更低的连接和传输延迟。QUIC目前的主要应用于http协议,基于QUIC的HTTP/3协议(RFC9114),除了拥有HTTP/2的各项优点,同时由于QUIC的特性,在弱网环境下拥有更强大的性能优势。QUIC由Google自研,2012年部署上线,2013年提交IETF,2021年5月,IETF推出标准版RFC9000。QUIC的主要优势如下:1)握手建连更快QUIC建连时间大约0~1 RTT,在两方面做了优化:传输层使用了UDP,...阅读全文

博文 2023-05-16 02:37:14 Tianyiyun

云服务器比传统服务器更安全的原因与实现机制

本文分享自天翼云开发者社区《云服务器比传统服务器更安全的原因与实现机制》,作者:3****m随着互联网的普及和云计算技术的发展,越来越多的企业和组织选择使用云服务器来提供和存储数据。与传统服务器相比,云服务器在安全性方面具有诸多优势。本文将围绕云服务器比传统服务器更安全的原因,探讨其实现机制。一、云服务器比传统服务器更安全的原因虚拟化技术云服务器采用虚拟化技术,将物理服务器上的资源(如CPU、内存、存储等)汇聚到一个虚拟的云中,然后通过网络对外提供服务。这种虚拟化技术可以隔离不同用户和业务,防止数据泄露和攻-击。同时,虚拟化技术还可以实现资源的动态调整和负载均衡,提高资源利用率和系统稳定性。容错技术云服务器通常采用容错技术,实现故障自动切换和负载均衡。当某个虚拟机出现故障时,系统会自动将其切...阅读全文

云数据库MySQL多人协同开发实践

本文分享自天翼云开发者社区《云数据库MySQL多人协同开发实践》,作者:不知不觉随着云计算技术的快速发展,云数据库作为云计算的重要组成部分,为企业提供了高效、灵活和可靠的数据存储和管理服务。其中,MySQL作为一款流行的开源关系型数据库,在云数据库领域具有广泛的应用。多人协同开发是软件开发过程中的重要环节,本文将探讨云数据库MySQL多人协同开发的实践。一、云数据库MySQL多人协同开发的优势高效协作:云数据库MySQL支持多人同时在线编辑和操作,实现了实时同步和冲突解决,提高了团队协作效率。数据安全:云数据库MySQL提供了数据加密、访问控制等安全措施,确保数据在传输和存储过程中的安全性。灵活扩展:云数据库MySQL可以根据业务需求进行弹性扩展,满足不同规模的应用需求。高效性能:云数据库M...阅读全文

博文 2023-12-18 18:29:21 Tianyiyun

存储程序和程序控制:开发经验分享及操作过程详解

本文分享自天翼云开发者社区《存储程序和程序控制:开发经验分享及操作过程详解》,作者:二进制诗人存储程序和程序控制是计算机行业中非常重要的一部分。它涉及到如何将程序和数据存储在计算机内存中,并通过程序控制来实现各种功能。本文将分享我的开发经验,并详细解释如何进行存储程序和程序控制的操作过程。1.理解存储程序和程序控制的基本概念 在计算机中,存储程序是指将程序和数据存储在内存中的过程。程序控制是指通过编写程序来控制计算机的运行,实现各种功能。理解这些基本概念是进行存储程序和程序控制开发的基础。2.选择合适的编程语言和开发环境根据具体的需求和开发经验,选择合适的编程语言和开发环境非常重要。常用的编程语言包括C、C++、Java等,而开发环境则可以选择Visual Studio、Eclipse等。根...阅读全文

博文 2024-01-12 10:50:50 Tianyiyun

解决项目版本冲突——maven-shade插件使用

背景 当我们在maven项目中引入第三方组件时,三方组件中的依赖可能会与项目已有组件发生冲突。 比如三方组件中依赖httpclient的版本是4.5.x,而项目中已有的httpclient版本是3.1.x,那么此时就会产生一下两种情况: 如果用三方组件的高版本httpclient覆盖原有的低版本httpclient,有可能会导致原来项目启动运行失败。即使高版本兼容低版本,也不能允许开发人员有这样高风险的操作 如果在三方maven依赖中对其对依赖的httpclient在引入时使用进行排除,使三方组件使用项目中的低版本httpclient,此时可能会因为版本不一致导致三方组件无法使用 在这样的情况下我们应当如何保证不影响项目原有依赖版本的情况下正常使用三方组件呢?此时可以考虑使用maven-sh...阅读全文

重学C++ ,重构你的C++知识体系[源码+PDF文档]

![1.png](http://static.itsharecircle.com/240303/6e9f3ce53c939832cacf6dd545189ac5.png) 为什么我们还要学C++ 因为在贴近底层、追求性能、降低功耗方面,C++几乎没有敌手,小到嵌入式、大到分布式,C++都是解决问题的利器,面向物联网的“嵌入式”开发和面向大型化的“分布式”开发都离不开它5G即来,C++在起势,你不抓住吗? 一、选择编译器 在C++编程中,我们需要选择一个合适的编译器来将我们编写的源代码转换为可执行的二进制文件。目前常用的C++编译器有GCC、Clang和Microsoft Visual C++等。这里我们选择GCC作为示例。 二、安装GCC编译器 GCC编译器是一个开源的跨平台工具链,可以在多...阅读全文

博文 2024-03-03 15:08:31 feilipu2023nui

C#+PLC通讯框架串口网口开发课程

C#+PLC通讯框架串口网口开发课程 C# 是面向对象的、面向组件的编程语言。 C# 提供了语言构造来直接支持这些概念,让 C# 成为一种非常自然的语言,可用于创建和使用软件组件。 自诞生之日起,C# 就添加了支持新工作负载和新兴软件设计实践的功能。 C# 本质上是面向对象的语言。 你需要定义类型及其行为。 多项 C# 功能有助于创建可靠且持久的应用程序。 垃圾回收自动回收不可访问的未用对象所占用的内存。 可以为 null 的类型可防范不引用已分配对象的变量。 异常处理提供了一种结构化且可扩展的方法来进行错误检测和恢复。 Lambda 表达式支持函数编程技术。 语言集成查询 (LINQ) 语法创建一个公共模式,用于处理来自任何源的数据。 异步操作语言支持提供用于构建分布式系统的语法。 C# ...阅读全文

博文 2024-03-14 16:19:28 xiaoshuai8888

手动备份MongoDB数据 - 云数据库 MongoDB

如果您购买的云数据库MongoDB实例数据库版本低于MongoDB 4.0,且备份方法选择物理备份,当该实例中集合和索引的总数量超过1万时,物理备份可能会失败。您可以在进行物理备份前,将云数据库MongoDB实例的数据库版本升级至MongoDB 4.0及以上,升级方法请参见升级数据库大版本。重要 数据库版本升级后,升级前生成的备份文件不能用于创建新的实例...阅读全文