自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(32)
  • 资源 (24)
  • 收藏
  • 关注

原创 Docker 启动alpine镜像中可执行程序文件遇到 not found

由于alpine镜像使用的是musl libc而不是gnu libc,/lib64/ 是不存在的。但他们是兼容的,可以创建个软连接过去试试!而一般二进制文件在linux系统下编译,动态链接库是到/lib64目录下的,在alpine镜像内无/lib64目录。的,alpine镜像使用的是musl libc而不是gun libc。因而动态链接库的位置不一致。在容器内/app/目录下放置了可执行文件abc,启动时提示not found。动态链接库位置错误导致。

2023-11-20 11:26:18 340

原创 Docker 启动alpine镜像中可执行程序文件遇到 not found

由于alpine镜像使用的是musl libc而不是gnu libc,/lib64/ 是不存在的。这种情况是因为*动态链接库位置错误导致*的,alpine镜像使用的是musl libc而不是gun libc。而一般二进制文件在linux系统下编译,动态链接库是到/lib64目录下的,在alpine镜像内无/lib64目录。## 1. 问题: docker alpine镜像中遇到 sh: xxx: not found。在容器内/app/目录下放置了可执行文件abc,启动时提示not found。

2023-11-20 11:24:53 453

原创 taro 生命周期方法 componentDidShow 不执行

taro 生命周期方法 componentDidShow 不执行环境说明taro版本:3.0.2taro-cli版本: 3.0.2、3.0.5、3.0.7package.json:如下"dependencies": { "@babel/runtime": "^7.7.7", "@tarojs/components": "3.0.2", "@tarojs/react": "3.0.2", "@tarojs/runtime": "3.0.2", "@taro

2020-08-06 13:35:57 6667

原创 windows事件跟踪--ETW(Event Trace For Windows)

ETW主要包括3个component:Controller, Provider, and Consumer. 这3个的角色从名字一看就清楚了。 我简单介绍一下使用的方法: Provider首先应该用RegisterTraceGuids注册一个Event Trace,同时提供给RegisterTraceGuids的还有一个ControlCallback,这个callback在P

2020-07-19 20:11:39 8797

原创 从零开始搭建 rocketmq 环境

从零开始搭建 RocketMQ 环境准备安装 jdk 1.8下载 rocketmq-all-4.7.1-source-release.zip启动 name server > nohup sh bin/mqnamesrv & > tail -f ~/logs/rocketmqlogs/namesrv.log启动 broker> nohup sh bin/mqbroker -n localhost:9876 &> tail -f ~/logs/

2020-07-19 20:07:04 310

原创 基于MQ的异步创建订单,提高下单并发量

两种方案:全量异步、半异步。下面分别说明一下两种方案的区别。全量异步:1. 前端调用下单接口获取订单id2. 下单接口构造订单领域对象,并缓存订单id到redis,状态为0(创建中),然后将领域对象通过MQ发送,并返回订单id到前端3. 订单系统消费异步创建订单的消息,调用库存等服务,如果失败,更新redis状态为-1(并设置错误状态码);如果成功;删除redis记录4. 前端获取到订单id后,轮询调用订单系统查询订单结果:4.1 如果redis命中,且为-1,则返回订单创建失.

2020-07-16 09:52:25 2814

原创 微服务开发规范

开发规范环境约定debug: 无依赖(mock),本地联调(前端),单元测试dev: 有依赖,服务端联调,集成测试sit: 功能测试pre:上线前测试,演练,模拟上线prd:生产环境版本号通用约定版本号的格式为 A.B.C (又称 Major.Minor.Patch),递增的规则为:A 表示主版本号,当 API 的兼容性变化时,A 需递增。B 表示次版本号,当增加功能时(不影响 API 的兼容性),B 需递增。C 表示修订号,当做 Bug 修复时(不影响 API 的兼容性)

2020-07-16 08:46:42 402

原创 Gradle 发布 docker

buildscript { repositories { gradlePluginPortal() jcenter() } dependencies { classpath 'com.bmuschko:gradle-docker-plugin:6.0.0' }}repositories { jcenter()}ext { // 设置 DEBUG 容器对外端口 DEBUG_PORT = "1008

2020-07-15 13:51:30 478

原创 logstash配置导致ELK日志重复

logstash的配置文件pipeline中的文件不是依据文件后缀进行判断该文件是否作为配置文件生效的。如果pipeline目录下有logstash.conf和logstash.confbak,2个配置文件都会被启用。正确的做法是将logstash.confbak移除(或者移出去)...

2020-07-11 10:43:12 1420 3

原创 使用kuboard代理

在部署中点击代理,即可通过kuboard的代理完成k8s集群内的服务接口调用,如下图所示如下,调用监控检查接口

2020-07-11 10:30:19 370

原创 Mybatis生成代码插件

Mybatis生成代码插件右侧添加Database,右键点击数据库表,选择mybatis-generator系统自动生成mapper接口、实体类、mapper.xml文件。

2020-07-10 11:03:46 115

原创 微服务脚手架

自定义微服务脚手架使用 yeoman 开发自定义脚手架使用脚手架生成快速微服务项目# install yonpm install -g yo --registry=https://registry.npm.taobao.org# yo --generators# install microservice generatornpm install -g @tdsdk/generator-microservice --registry=http://npmjs.tradedge.cn# ge

2020-07-08 16:09:02 554

转载 利用VMWare和WinDbg调试驱动程序

 利用WinDbg了。不过听牛人说过,WinDbg可以把内核的全部结构都显示出来,要比Softice强。等我以后测试看看。首先,最好先下载http://msdl.microsoft.com/downlo ... SP2-slp-Symbols.exe 符号表,然后安装到真实系统中。再下载http://msdl.microsoft.com/downlo ... dbg_x86_6.5.3.8.exe

2008-07-21 13:25:00 806

转载 select 模型

 讲一下套接字模式和套接字I/O模型的区别。先说明一下,只针对Winsock,如果你要骨头里挑鸡蛋把UNIX下的套接字概念来往这里套,那就不关我的事。套接字模式:阻塞套接字和非阻塞套接字。或者叫同步套接字和异步套接字。套接字模型:描述如何对套接字的I/O行为进行管理。Winsock提供的I/O模型一共有五种:select,WSAAsyncSelect,WSAEventSelect,Overlapp

2008-07-18 10:45:00 681

转载 ACE 实现 完成端口(win32_I/O模型)

 在win32平台上最有效率的IO模型,莫过于完成端口了。CSDN上到处都是关于完成端口的问题。在ACE中对win32平台的完成端口有着非常好的封装。ACE中前摄式框架的win32实现就是使用的完成端口。我们先来看看这个框架有哪些组成部分。  ACE_Proactor 前摄器,真怪异的名字。叫异步事件分配者多好啊。  ACE_Service_Handler 事件处理器。处理所有异步操作的结果。 

2008-07-18 10:44:00 2104

转载 detours

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <object classid

2008-07-15 10:06:00 1325 1

转载 Filesystem Driver Stack by tiamo

Filesystem Driver Stack作者:tiamo来源:白细胞写这个文章的初衷是想知道究竟一个读写文件的irp都是怎样被处理的.....大家都知道这样的一个读写文件irp是发送给file system的driver的file system把这个irp交给了下层的device这个device叫logical volumedevice,它由dev

2008-07-14 10:42:00 2015

转载 驱动编写的全过程

目录:    ☆ 概述     ☆ 编写hello.c文件     ☆ 编写dirs文件     ☆ 编写sources文件     ☆ 编写makefile文件     ☆ 编译产生hello.sys文件     ☆ 编写hello.inf文件     ☆ 安装hello.inf文件     ☆ 卸载hello.sys及相关设置    

2008-07-13 17:08:00 5658 1

转载 若干关于 file system driver stack

写这个文章的初衷是想知道究竟一个读写文件的irp都是怎样被处理的.....大家都知道这样的一个读写文件irp是发送给file system的driver的file system把这个irp交给了下层的device这个device叫logical volume device,它由device的vbp里面的realdevice指针指出(不一定就会是这个device,而应该是这个de

2008-07-13 16:57:00 1178

转载 读懂常见IRP:IRP_MJ_CLEANUP/IRP_MJ_CLOSE/IRP_MJ_CREATE

IRP_MJ_CLEANUP保持进程定义上下文信息的驱动器,必须在DispatchCleanup中包含cleanup请求。何时发送: 收到IRP_MJ_CLEANUP意味着请求的目标设备与目标文件的句柄相关(也可能因为io请求后没有释放)入参: 无出参: 无操作: 该IRP在关闭 file object 句柄的进程上下文中发送。因此,驱动器应该释放进程上下文中所指

2008-07-13 16:42:00 5353 1

转载 什么是 LookasideList

首先分配一个块内存, 然后让系统自己进行管理   针对这块内存判断其属性是分页的,还是非分页的。分别调用不同的函数, 来初始化这块    内存,来构造一个Lookaside表。   分页的使用ExInitializePagedLookasideList函数    非分页的使用 ExInitializeNonpagedLookasideList函数    E

2008-07-13 16:40:00 2143

原创 IRP请求中判断:文件/目录

IRP请求中判断:文件/目录#define FAT_NTC_FCB 0x0502#define FAT_NTC_DCB 0x0503#define FAT_NTC_ROOT_DCB 0x0504#define NTFS_NTC_DCB 0x0703#define NT

2008-07-13 16:32:00 1233

原创 驱动开发入门winnt

本书中的样例程序都是 Windows NT 内核模式设备驱动程序。 本章介绍构建驱动程序以及理解本书样例所需的信息。但是本章可不是驱动程序大全,详尽讨论驱动程序的最好的信息来源就是 Art Baker 所著的 The Windows NT Device Driver Book: A Guide for Programmers 和 Windows NT Device Driver Kit (DD

2008-07-13 16:17:00 1516

原创 [解决]vs2005打不开ds3.2生成的.sln文件

假如,vs2005打不开ds3.2生成的.sln文件,按照下面的做法 如果在vs2005+补丁后生成的解决方案文件.sln无法双击打开工程时可以使用文本编辑器打开.sln文件在第二行加入“# Visual Studio 2005”保存即可,例如:Microsoft Visual Studio Solution File, Format Version 9.00# Vis

2008-07-13 16:13:00 2495

转载 bencoding编码详细解析

BT种子文件 bencoding编码详细解析BT种子文件使用了一种叫bencoding的编码方法来保存数据。 bencoding现有四种类型的数据:srings(字符串),integers(整数),lists(列表),dictionaries(字典) 编码规则如下: strings(字符串)编码为:: 例如: 4:test 表示为字符串"test" 4:例子 表示为字

2008-07-12 18:23:00 3067

转载 SHFileOperation

SHFileOperation函数功能描述:文件操作,与 Shell 的动作相同.函数原型:#includeWINSHELLAPI int WINAPI SHFileOperation(LPSHFILEOPSTRUCT lpFileOp);参数:typedef struct _SHFILEOPSTRUCT{

2008-07-12 18:21:00 4734

原创 问题查询

DLL 调用错误 -The value of ESP was not properly saved across a function call.       typedef void (* proc)();增加WINAPI后正常:typedef void (WINAPI * proc)(); 1.       error LNK2019: unresolved external

2008-07-12 18:13:00 2626 2

转载 活动目录服务接口ADSI(Active Directory Service Interface)

目录服务技术介绍——ADSI 潘爱民北京大学计算机科学技术研究所 (100871)【摘要】本文介绍了Microsoft提出的活动目录服务接口(ADSI)技术。文章首先讲述了ADSI的结构,然后介绍了ADSI的程序设计方法,最后通过例子简单说明了ADSI的用法。一、ADSI简介ADSI (Active Directory Services Interface)是Microsof

2008-07-12 17:48:00 6205

转载 *_cast用法详解

*_cast的用法const_cast 如有 constinti=6;    int*p; 则: p=&i;    //非法    p=const_cast(i); //合法static_castdynamic_castreinterpret_cast 尽量使用C++风格的类型转换:   

2008-07-12 17:38:00 4145

原创 C++关键字(static/register/atuo/extern/volatile/const)释疑

C++关键字(static/register/atuo/extern/volatile/const)释疑 下面关于C++的几个关键字是经常和我们打交道的而我们又经常对这些含糊不清的, 本文根据自己的学习体会作以总结,以期达到真正理解和活用的目的。static 静态变量作用范围在一个文件内,程序开始时分配空间,结束时释放空间,默认初始化为0,使用时可改变其值。 静态变量或静态函数,即

2008-07-12 16:34:00 1040

转载 #pragma预处理指令 详细介绍

在所有的预处理指令中,#pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。      其格式一般为: #pragma  par

2008-07-12 16:31:00 568

转载 线程池与工作队列

几乎在每个服务器应用程序中都会出现线程池和工作队列问题。本文中,Brian Goetz 探讨了线程池的动机、一些基本实现和调优技术以及一些要避免的常见危险。为什么要用线程池?诸如 Web 服务器、数据库服务器、文件服务器或邮件服务器之类的许多服务器应用程序都面向处理来自某些远程来源的大量短小的任务。请求以某种方式到达服务器,这种方 式可能是通过网络协议(例如 HTTP、FTP 或 POP)

2008-07-12 16:23:00 682

jira 7.5.2 补丁

下载 jira 7.5.2 后,使用该补丁进行覆盖,可以正常使用 jira

2017-12-27

SOFTICE使用说明中文版

SOFTICE使用说明中文版,对wdm编程很有用。-SOFTICE use the Chinese version of `programming useful.

2008-03-19

boost library for vc2003(vc7).part12.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part11.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part10.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part09.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part08.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part07.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part06.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part05.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part04.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part03.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part02.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc2003(vc7).part01.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc6.part4.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc6.part3.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc6.part2.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

boost library for vc6.part1.rar

boost是对标准模板库的扩展,里面主要是一些功能性的类库,这里都是编译好了的,可以直接使用的

2008-03-08

ACE-5.4+TAO-1.4+CIAO-0.4.part4.rar

ACE 自适配通信环境(ADAPTIVE Communication Environment)是可自由使用、开放源码的面向<br>对象(OO)框架(framework),它实现了许多用于并发通信软件的核心模式。ACE 提供了一组丰富的可<br>重用 C++包装外观(wrapper facade)和框架组件,可跨多种平台完成通用的通信软件任务,其中包括:<br>事件多路分离和事件处理器分派、信号处理、服务初始化、进程间通信、共享内存管理、消息路由、分<br>布式服务动态(重)配置、并发执行和同步,等等。 <br>ACE 的目标用户是高性能和实时通信服务和应用的开发者。它简化了使用进程间通信、事件多路分<br>离、显式动态链接和并发的 OO网络应用和服务的开发。此外,通过服务在运行时与应用的动态链接,A<br>CE 使系统的配置和重配置得以自动化。 <br>ACE 正在进行持续的改进。Riverace 公司(http://www.riverace.com<br>)采用开放源码商业模式对 ACE<br>进行商业支持。此外,ACE 开发组的许多成员目前正在进行 The ACE ORB(TAO,http://www.cs.wustl.<br>edu/~schmidt/TAO.html)的开发工作。<br><br>使用 ACE的好处 <br><br>诸多使用 ACE 的好处包括: <br>增强可移植性:在 ACE 组件的帮助下,很容易在一种 OS 平台上编写并发网络应用,然后快速地将<br>它们移植到各种其他的 OS 平台上。而且,因为 ACE 是开放源码的自由软件,你无需担心被锁定在<br>特定的操作系统平台或编译器上。 更好的软件质量:ACE 的设计使用了许多可提高软件质量的关键模式,这些质量因素包括通信软件<br>灵活性、可扩展性、重用性和模块性。 更高的效率和可预测性:ACE 经仔细设计,支持广泛的应用服务质量(QoS)需求,包括延迟敏感应<br>用的低响应等待时间、高带宽应用的高性能,以及实时应用的可预测性。 更容易转换到标准的高级中间件:TAO使用了 ACE 提供的可重用组件和模式。它是 CORBA的开发<br>源码、遵循标准的实现,并为高性能和实时系统作了优化。为此,ACE 和 TAO被设计为能良好地协<br>同工作,以提供全面的中间件解决方案。

2008-03-08

ACE-5.4+TAO-1.4+CIAO-0.4.part3.rar

ACE 自适配通信环境(ADAPTIVE Communication Environment)是可自由使用、开放源码的面向<br>对象(OO)框架(framework),它实现了许多用于并发通信软件的核心模式。ACE 提供了一组丰富的可<br>重用 C++包装外观(wrapper facade)和框架组件,可跨多种平台完成通用的通信软件任务,其中包括:<br>事件多路分离和事件处理器分派、信号处理、服务初始化、进程间通信、共享内存管理、消息路由、分<br>布式服务动态(重)配置、并发执行和同步,等等。 <br>ACE 的目标用户是高性能和实时通信服务和应用的开发者。它简化了使用进程间通信、事件多路分<br>离、显式动态链接和并发的 OO网络应用和服务的开发。此外,通过服务在运行时与应用的动态链接,A<br>CE 使系统的配置和重配置得以自动化。 <br>ACE 正在进行持续的改进。Riverace 公司(http://www.riverace.com<br>)采用开放源码商业模式对 ACE<br>进行商业支持。此外,ACE 开发组的许多成员目前正在进行 The ACE ORB(TAO,http://www.cs.wustl.<br>edu/~schmidt/TAO.html)的开发工作。<br><br>使用 ACE的好处 <br> <br>诸多使用 ACE 的好处包括: <br> 增强可移植性:在 ACE 组件的帮助下,很容易在一种 OS 平台上编写并发网络应用,然后快速地将<br>它们移植到各种其他的 OS 平台上。而且,因为 ACE 是开放源码的自由软件,你无需担心被锁定在<br>特定的操作系统平台或编译器上。 更好的软件质量:ACE 的设计使用了许多可提高软件质量的关键模式,这些质量因素包括通信软件<br>灵活性、可扩展性、重用性和模块性。 更高的效率和可预测性:ACE 经仔细设计,支持广泛的应用服务质量(QoS)需求,包括延迟敏感应<br>用的低响应等待时间、高带宽应用的高性能,以及实时应用的可预测性。 更容易转换到标准的高级中间件:TAO使用了 ACE 提供的可重用组件和模式。它是 CORBA的开发<br>源码、遵循标准的实现,并为高性能和实时系统作了优化。为此,ACE 和 TAO被设计为能良好地协<br>同工作,以提供全面的中间件解决方案。

2008-03-08

ACE-5.4+TAO-1.4+CIAO-0.4.part2.rar

ACE 自适配通信环境(ADAPTIVE Communication Environment)是可自由使用、开放源码的面向<br>对象(OO)框架(framework),它实现了许多用于并发通信软件的核心模式。ACE 提供了一组丰富的可<br>重用 C++包装外观(wrapper facade)和框架组件,可跨多种平台完成通用的通信软件任务,其中包括:<br>事件多路分离和事件处理器分派、信号处理、服务初始化、进程间通信、共享内存管理、消息路由、分<br>布式服务动态(重)配置、并发执行和同步,等等。 <br>ACE 的目标用户是高性能和实时通信服务和应用的开发者。它简化了使用进程间通信、事件多路分<br>离、显式动态链接和并发的 OO网络应用和服务的开发。此外,通过服务在运行时与应用的动态链接,A<br>CE 使系统的配置和重配置得以自动化。 <br>ACE 正在进行持续的改进。Riverace 公司(http://www.riverace.com<br>)采用开放源码商业模式对 ACE<br>进行商业支持。此外,ACE 开发组的许多成员目前正在进行 The ACE ORB(TAO,http://www.cs.wustl.<br>edu/~schmidt/TAO.html)的开发工作。<br><br>使用 ACE的好处 <br> <br>诸多使用 ACE 的好处包括: <br> 增强可移植性:在 ACE 组件的帮助下,很容易在一种 OS 平台上编写并发网络应用,然后快速地将<br>它们移植到各种其他的 OS 平台上。而且,因为 ACE 是开放源码的自由软件,你无需担心被锁定在<br>特定的操作系统平台或编译器上。 更好的软件质量:ACE 的设计使用了许多可提高软件质量的关键模式,这些质量因素包括通信软件<br>灵活性、可扩展性、重用性和模块性。 更高的效率和可预测性:ACE 经仔细设计,支持广泛的应用服务质量(QoS)需求,包括延迟敏感应<br>用的低响应等待时间、高带宽应用的高性能,以及实时应用的可预测性。 更容易转换到标准的高级中间件:TAO使用了 ACE 提供的可重用组件和模式。它是 CORBA的开发<br>源码、遵循标准的实现,并为高性能和实时系统作了优化。为此,ACE 和 TAO被设计为能良好地协<br>同工作,以提供全面的中间件解决方案。

2008-03-08

ACE-5.4+TAO-1.4+CIAO-0.4.part1.rar

ACE 自适配通信环境(ADAPTIVE Communication Environment)是可自由使用、开放源码的面向<br>对象(OO)框架(framework),它实现了许多用于并发通信软件的核心模式。ACE 提供了一组丰富的可<br>重用 C++包装外观(wrapper facade)和框架组件,可跨多种平台完成通用的通信软件任务,其中包括:<br>事件多路分离和事件处理器分派、信号处理、服务初始化、进程间通信、共享内存管理、消息路由、分<br>布式服务动态(重)配置、并发执行和同步,等等。 <br>ACE 的目标用户是高性能和实时通信服务和应用的开发者。它简化了使用进程间通信、事件多路分<br>离、显式动态链接和并发的 OO网络应用和服务的开发。此外,通过服务在运行时与应用的动态链接,A<br>CE 使系统的配置和重配置得以自动化。 <br>ACE 正在进行持续的改进。Riverace 公司(http://www.riverace.com<br>)采用开放源码商业模式对 ACE<br>进行商业支持。此外,ACE 开发组的许多成员目前正在进行 The ACE ORB(TAO,http://www.cs.wustl.<br>edu/~schmidt/TAO.html)的开发工作。<br><br>使用 ACE的好处 <br> <br>诸多使用 ACE 的好处包括: <br> 增强可移植性:在 ACE 组件的帮助下,很容易在一种 OS 平台上编写并发网络应用,然后快速地将<br>它们移植到各种其他的 OS 平台上。而且,因为 ACE 是开放源码的自由软件,你无需担心被锁定在<br>特定的操作系统平台或编译器上。 更好的软件质量:ACE 的设计使用了许多可提高软件质量的关键模式,这些质量因素包括通信软件<br>灵活性、可扩展性、重用性和模块性。 更高的效率和可预测性:ACE 经仔细设计,支持广泛的应用服务质量(QoS)需求,包括延迟敏感应<br>用的低响应等待时间、高带宽应用的高性能,以及实时应用的可预测性。 更容易转换到标准的高级中间件:TAO使用了 ACE 提供的可重用组件和模式。它是 CORBA的开发<br>源码、遵循标准的实现,并为高性能和实时系统作了优化。为此,ACE 和 TAO被设计为能良好地协<br>同工作,以提供全面的中间件解决方案。

2008-03-08

了解UNICODE

本书介绍UNICODE的只是及实例。

2007-05-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除