资讯

  • 让企业内部开发游刃有余,平台工程到底是什么?

    让企业内部开发游刃有余,平台工程到底是什么?

    更好地了解toB领域,须得从层出不穷的“新词儿”入手,IDC、Gartner等调研机构也煞费苦心地成为“造词运动”的直接推动者。这么多新术语、表达方式和首字母缩写,为我们的理解增加了诸多挑战。今年年初,Gartner发布2023年十大战略技术趋势,“平台工程”赫然在列。同时,Gartner还预测到2026年,80%的软件工程组织将建立平台团队,其中75%将包含开发者自助服务门户。 让企业内部开发游...

    日期:2023-08-19点击:183
  • 虚拟现实如何重塑数字广告

    虚拟现实如何重塑数字广告

    虚拟现实(VR)允许用户在其直接的物理环境中实时体验虚拟世界。通过为客户提供体验式的品牌演示,数字广告中的VR可以改变人们创作和观看广告的方式。通过网站、社交媒体、移动应用程序、电子邮件和搜索引擎等数字平台进行的营销是数字营销。作为一种广泛使用的营销和广告手段,数字营销已经被证明对目标受众具有相当大的影响力。然而,使用社交媒体来推广产品、服务或品牌也可能具有侵入性,给客户带来不便。数字广告中的虚拟...

    日期:2023-08-19点击:198
  • 如何为游戏开发优化3D模型?

    如何为游戏开发优化3D模型?

    译者 | 布加迪审校 | 重楼在过去的十年中,3D游戏开发变得极易上手。Unity和Unreal Engine之类的引擎让我们在无需大笔预算的情况下更容易开发出漂亮的3D游戏,但这个过程中仍有很多内容需要学习。为游戏设计和优化3D模型是其中很重要的一个环节,我们将助您一臂之力。下面介绍可以用来为游戏开发优化3D模型的几个关键实践和技术。3D模型游戏优化:开发实践虽然您可以用3D设计软件来完成为游戏...

    日期:2023-08-19点击:194
  • 构建C语言开发环境

    构建C语言开发环境

    有些C/C++项目开发周期极长。在处理此类项目过程中,构建开发环境就像施展魔法一样:测试框架被巧妙集成在一起,CI/CD流程将开发者从繁琐重复的工作中解脱出来。作为程序员,在开发过程中,我只有一个简单的愿望:在当前的开发环境中将C库简化为少数几个文件。在本文中,我们将介绍如何为C语言项目构建容器化开发环境,也将介绍如何使用CMake设置构建系统、使用Unity设置测试环境以及如何在CI流水线中构建...

    日期:2023-08-17点击:220
  • Docker数据持久化与数据共享

    Docker数据持久化与数据共享

    上篇文章的最后我们使用Docker部署了一个纯前端项目,但还有一个很重要的问题就是容器中产生的数据(比如log文件),容器一旦被删除,容器内的所有数据也就没有了,为了避免这个问题我们可以将数据存储到容器之外(比如宿主机),这样即使删除容器也不会丢失数据。一旦容器故障,我们可以重新创建一个容器,将数据挂载到容器里,就可以快速恢复。数据存储方式Docker提供了以下几种存储方式:「volume卷」:这...

    日期:2023-08-17点击:178
  • 构建微服务的初学者指南:使用AWS Lambda

    构建微服务的初学者指南:使用AWS Lambda

    AWS Lambda提供了一个理想的开发微服务的环境,因为它具有事件驱动的架构和可扩展性。当用于构建微服务时,AWS Lambda提供了一种构建可扩展和灵活的基于云的应用程序的途径。AWS Lambda支持无需服务器配置或管理的代码执行,使其成为微服务架构的合适选择。本初学者指南将详细介绍使用AWS Lambda构建微服务的步骤。使用AWS Lambda构建微服务 让我们深入了解使用AWS Lam...

    日期:2023-08-17点击:192
  • 使用Redis分布式锁可能会出现哪些问题?

    使用Redis分布式锁可能会出现哪些问题?

    大家都知道,分布式锁是在分布式系统中用来控制资源访问的重要工具。而Redis作为一款高性能的内存数据库,自然成了实现分布式锁的不二选择。但是,在使用Redis做分布式锁的过程中,可能会遇到一些棘手的问题,让我们一一来看看!Redis分布式锁简介首先,我们先来了解一下Redis分布式锁是什么。分布式锁是为了解决多个应用实例或多个线程之间的并发竞争问题而设计的。它可以确保在分布式环境中,同一时刻只有一...

    日期:2023-08-17点击:227
  • 为什么Redis使用单线程性能会优于多线程?

    为什么Redis使用单线程性能会优于多线程?

    前言在计算机领域,性能一直都是一个关键的话题。无论是应用开发还是系统优化,我们都需要关注如何在有限的资源下,实现最大程度的性能提升。Redis,作为一款高性能的开源内存数据库,因其出色的单线程性能而备受瞩目。那么,为什么Redis使用单线程性能会优于多线程呢?这就是我们今天要探讨的问题。Redis的单线程模型首先,让我们来了解一下Redis的单线程模型。Redis之所以使用单线程,是因为它主要是基...

    日期:2023-08-17点击:206
  • 深入了解Java中乐观锁和悲观锁的秘密

    深入了解Java中乐观锁和悲观锁的秘密

    今天要和大家聊聊一个在Java开发中常见的热门话题——乐观锁和悲观锁的实现。作为程序员的我们,面试中经常会被问到这个问题,那么它们究竟是怎么一回事呢?让我们一起来揭开这个神秘的面纱吧!前言:锁的作用和分类在多线程编程中,为了保证数据的一致性和线程安全,锁是必不可少的工具。锁可以分为两大类:乐观锁和悲观锁。乐观锁假设多个线程之间很少会发生冲突,因此在读取数据时不会加锁,而在更新数据时会检查是否有其他...

    日期:2023-08-17点击:202
  • Seata Stellar:无缝整合不同框架的分布式事务解决方案

    Seata Stellar:无缝整合不同框架的分布式事务解决方案

    随着云计算和大数据技术的快速发展,分布式系统已经成为现代软件开发中普遍采用的架构模式。然而,分布式系统中的事务处理一直是一个挑战,尤其是跨多个服务或多个数据库的分布式事务。在传统的单体应用中,事务处理相对简单。但在分布式环境中,由于涉及到多个服务和多个数据库的操作,事务的管理变得更加复杂。分布式事务的挑战包括事务的一致性、隔离性、持久性和原子性等方面。为了解决分布式事务的问题,Seata Stel...

    日期:2023-08-17点击:212
  • RabbitMQ插件开发指南:定制化你的消息队列

    RabbitMQ插件开发指南:定制化你的消息队列

    RabbitMQ是一个功能强大的消息队列系统,它提供了灵活的插件机制,使用户能够定制化自己的消息队列。下面将为您介绍RabbitMQ插件开发的指南,让您能够根据自己的需求编写定制化的插件。一、插件的概念和作用插件是一种可扩展的组件,可以在RabbitMQ的基础上增加新的功能或改变现有功能的行为。通过编写插件,可以满足特定的业务需求,实现个性化的消息队列。插件可以用于多个方面,如:1、消息转换:可以...

    日期:2023-08-17点击:214
  • 前端整洁架构,你了解多少?

    前端整洁架构,你了解多少?

    本文来聊一聊前端整洁架构。首先,总体了解什么是"整洁架构",并熟悉领域、用例和应用层等概念。然后,讨论它如何应用于前端,以及它是否值得使用。然后,按照整洁架构的规则设计一个商店应用,并从头开始设计一个用例,看看它是否可用。这个应用使用 React、TypeScript 编写,编写过程中会考虑可测试性,并对其进行改进。架构与设计设计的基本目标是以一种能够重新组合的方式将事物分解开来...将事物分成可...

    日期:2023-08-17点击:224
  • 是的,这里有三种使用Vue 3创建多布局系统的方法

    是的,这里有三种使用Vue 3创建多布局系统的方法

    AICube 开放GPT-4给大家使用以及AI工具助手,可以简化大家生图的的prompt。布局是中大型网站或应用的基础。假设你正在创建一个网页应用,它包括主页、营销页面和应用页面:希望主页拥有独特的布局希望您的营销页面有侧边栏或其他任何东西希望您的应用页面具有常见的元素,如警告消息、错误消息、特定的标题、导航等等你不会想要为每一页重复所有的工作,对吧?与Nuxt不同,Vue 3并没有内置的布局系统...

    日期:2023-08-17点击:222
  • 谷歌的Project IDX会扼杀其他应用程序开发框架吗?

    谷歌的Project IDX会扼杀其他应用程序开发框架吗?

    作者丨Mohit Pandey编译丨千山桌面应用、App、小程序、物联网终端设备......面对业务日益复杂的终端适配需要,跨平台应用开发框架的使用趋势只增不减。它允许开发人员使用一套代码,一次性编码即可在多个端侧平台上运行,极大降低了开发周期,是实现快速交付的利器。但同样不可否认的是,在不断发展的软件开发环境中,构建无缝跨平台的应用程序一直是一项艰巨的挑战。多年来,谷歌一直致力于通过Angula...

    日期:2023-08-17点击:225
  • 转转游戏的账号订单流程重构之路

    转转游戏的账号订单流程重构之路

    1、背景随着需求的不断迭代,项目代码的复杂度也会越来越高,“屎山”也一天一天慢慢的堆积起来,对于游戏业务的账号订单流程也是如此。游戏订单类型由原来的俩种增加到了现在的七种,早就已经到了需要重构的地步。但是由于牵涉流程长、影响范围大、平时需求排期也比较紧张,所以便无法抽出大量的时间去进行重构。因为一开始就设计的不够规范、合理,所以之前整个账号订单流程存在以下主要问题:1.1 核心代码分布散乱除了按照...

    日期:2023-08-16点击:229
  • 基于模块联邦与大仓模式的商家巨石应用拆分实践

    基于模块联邦与大仓模式的商家巨石应用拆分实践

    一、背景商家后台前端代码目前代码量达到十万级,每个迭代团队需要在同一仓库中迭代几十个需求,在日渐庞大的巨石应用下如此活跃的迭代,开发效率与构建效率上给我们带来了一些挑战,我们需要优化以下几点:代码构建体量大,随着时间推移,构建速度的优化空间较少。巨石应用下各个业务模块没有做物理拆分,管理与维护难度提升。应用粒度较粗,在发布节点上需要对应用做进一步拆分以优化发布粒度。巨石应用下,组件与业务的关系需要...

    日期:2023-08-16点击:196
  • 如何编写技术文档?

    如何编写技术文档?

    作者 |  蔡正锋软件开发中,为你的软件系统编写文档并不是一件新鲜的事情。几乎所有人都明白这样的道理:你的软件产品如何优秀对用户来说并不是最重要的,因为你的文档如果不够优秀,用户不会使用它!即便用户在某些情况下不得不使用你的产品,没有好的文档,用户无法高效使用或者以错误的方式使用你的产品。不幸的是,鲜少能见到关于如何正确组织技术文档的实践及方法论。团队工作中,编写文档...

    日期:2023-08-16点击:201
  • 基于静态编译构建微服务应用

    基于静态编译构建微服务应用

    Java 的局限性传统的一个 Java 应用从代码编写到启动运行大致可以分为如下步骤:首先,编写 .java 源代码程序。然后,借助 javac 工具将 .java 文件翻译为 .class 的字节码,字节码是 Java 中非常重要的内容之一,正是因为它的出现,Java 才实现对底层环境的屏蔽,达到 Write once, run anywhere 的效果!基于步骤 2 的 .class 文件会被...

    日期:2023-08-16点击:210