Jack Huang's Blog


  • 首页

  • 标签

  • 归档

  • 搜索

IDEA控制台中文乱码解决方法

发表于 2025-09-27

使用 IDEA 集成开发环境运行 Sprint Boot 应用程序时,控制台中文乱码,参考文章1分钟解决IntelliJ IDEA 控制台中文乱码,统一设置 utf-8,再也不会乱码了中第一种方法解决了中午乱码问题。

参考链接

  1. 1分钟解决IntelliJ IDEA 控制台中文乱码,统一设置 utf-8,再也不会乱码了,by 程序员徐师兄.

消息队列学习笔记

发表于 2025-09-26

消息队列是一种常用的软件架构,有必要了解和学习它。

基本知识

定义

消息队列(Message Queue,简称MQ)是一种在计算机系统中用于在不同应用程序或服务之间进行异步通信的中间件技术,它通过一个存储消息的队列作为中间人,允许发送者(生产者)将消息放入队列,接收者(消费者)则在准备好时从队列中取出并处理,从而实现系统解耦、异步处理和流量削峰等目标。消息队列的出现解决了分布式系统中数据丢失、服务故障、处理能力不足以及业务系统间强耦合等问题。

核心概念

  • 生产者(Producer):负责创建和发送消息到消息队列的应用程序或服务。
  • 消费者(Consumer):负责从消息队列中接收消息并进行处理的应用程序或服务。
  • 消息(Message):在应用程序之间传递的数据包,可以是简单的文本或复杂的数据结构。
  • 消息队列(Message Queue):一个存储消息的容器,它本身是一个队列(先进先出)数据结构。
  • 代理(Broker):消息队列的核心组件,负责存储消息、确认消息的传递和重试等。

主要作用

  • 系统解耦:生产者和消费者之间不需要直接通信,降低了系统之间的依赖性。
  • 异步通信:消息的发送和接收不需要同时发生,大大提高了系统的吞吐量和响应速度。
  • 削峰填谷:在高并发场景下,消息队列能够缓冲瞬时的大量请求,将高并发的流量“削峰”,让后端系统有足够的时间处理。
  • 流量控制:通过控制消费者对消息的处理速度,可以有效避免后端服务因过载而崩溃。
  • 可靠投递:消息队列能够持久化存储消息,即使接收者暂时不可用,消息也不会丢失,保证了数据的安全。

常见用例

  • 分布式事务::实现不同服务之间的数据最终一致性。
  • 日志处理::将日志数据异步地从各个服务发送到集中的日志处理系统。
  • 实时数据处理::在流处理和大数据场景下,用于数据流的缓冲和转发。

主流技术

  • RabbitMQ:一个老牌的开源消息队列,功能强大,支持多种消息协议。
  • Kafka:由LinkedIn开发,以高性能和高吞吐量著称,常用于大数据流式处理场景。
  • RocketMQ:由阿里巴巴开发,是轻量级的高性能分布式消息中间件。
  • ActiveMQ:一个由Apache开发的开源消息中间件,支持多种传输协议。

与模型对比

消息队列与发布/订阅的对比

消息队列使用点对点消息传递模式,在该模式中,一个应用程序(称为“发送者”)向队列提交消息,另一个应用程序(称为“接收者”)则从队列中获取并使用消息。发送者和使用者之间存在紧密耦合的一对一关系,并且每条消息只能使用一次。

如果您的应用程序需要将消息分发给多方,则可以组合多个消息队列,或者使用发布/订阅 (pub/sub) 消息传递模型。

在发布/订阅消息传递中,生成消息的应用程序称为发布者,而使用该消息的应用程序称为订阅者。每条消息都会发布到一个主题,订阅该主题的每个应用程序都会获得发布到它的所有消息的副本。

大多数消息传递中间件解决方案都支持消息队列(点对点)和发布/订阅消息模型。

消息队列与消息总线的对比

消息总线是一种企业服务总线 (ESB),它允许服务随处访问数据,同时确保它们在分布式系统架构中保持解耦和独立运行。当使用消息总线时,所有服务或应用程序必须共用通用数据类型、通用命令集和通用通信协议(尽管它们可能用不同的语言编写)。使用者可以决定如何使用信息。

如果解耦的应用程序要通过消息总线进行通信,则必须转换消息以使其归属于同一类型。相反,消息队列可传输各类消息,无论其类型是否相同。

参考链接

  1. Kafka、ActiveMQ、RabbitMQ、RocketMQ 区别以及高可用原理,by 爱撸猫的杰.
  2. 消息队列,by wikipedia.
  3. 什么是消息队列?,by ibm.
  4. 消息总线和消息队列有何区别?,by kimmking.
  5. 企业服务总线,by wikipedia.

Vlan配置方法

发表于 2025-09-22

最近单位有一台计算机,只有一个网卡,但是需要通三个网段通信,为了避免各个网段之间的组播通信流量占用带宽,拟采用Vlan技术,使用三次交换机进行逻辑隔离。具体过程记录如下。

具体方法

使用 VLAN 接口。

核心思想是:在计算机的网络接口上创建多个虚拟接口,并将每个虚拟接口关联到不同的VLAN。

这种方法适用于支持802.1Q VLAN标记的交换机和操作系统。它在单个物理网卡上创建多个逻辑接口。

  • 物理连接:服务器通过一根网线连接到支持802.1Q的交换机端口。该交换机端口需要被配置为Trunk模式,允许携带多个VLAN的流量。

  • 服务器端配置:在服务器的操作系统上,你需要创建VLAN虚拟接口。

1
2
3
4
5
6
7
8
9
10
11
例如:

物理网卡名:eth0

创建的虚拟接口:

eth0.10 (对应VLAN 10)

eth0.20 (对应VLAN 20)

eth0.30 (对应VLAN 30)

对于Realtek网卡,可使用realtek diagnostic utility工具,创建多个vlan网口。具体请参考 realtek adapter的vlan设定。

  • IP地址分配:为每个虚拟接口分配一个属于相应VLAN网段的IP地址。
1
2
3
4
5
eth0.10 -> 192.168.10.100/24 (VLAN 10的网关可能是 192.168.10.1)

eth0.20 -> 192.168.20.100/24 (VLAN 20的网关可能是 192.168.20.1)

eth0.30 -> 192.168.30.100/24 (VLAN 30的网关可能是 192.168.30.1)

工作原理: 当服务器要发送一个数据包到VLAN 10的网络时,它会通过 eth0.10 发出,操作系统会自动给这个数据包打上VLAN 10的标签。交换机的Trunk端口收到后,会根据标签将数据包转发到VLAN 10。反之,当交换机发送一个带有VLAN 20标签的数据包给服务器时,只有服务器的 eth0.20 接口能接收到它。

跨Vlan通信

  • 方式一:使用三层交换机(推荐方案)
  • 方式二:使用路由器(“单臂路由”)
  • 方式三:使用防火墙

参考链接

  1. realtek adapter的vlan设定,by helloweifa.
  2. 什么是VLAN,by huawei.
  3. 什么是组播?,by huawei.
  4. 配置终端直连三层网关设备进行VLAN间通信示例,by huawei.

NTP时间同步设置方法

发表于 2025-09-20 | 更新于 2025-09-24

对于分布式系统的运转而言,各个分布式的实体基于同一时间标准是必要条件,如果各个分布式实体的时间标准不统一,整个系统必然分崩离析。下面介绍在不同操作系统平台设置 NTP 客户端的方法。

Windows平台

  • 设置 NTP 时间服务器
1
2
3
4
5
打开日期和时间设置

找到Internet时间设置

选择NTP服务器并同步
  • 调整时间同步频率
1
2
3
4
5
打开注册表编辑器(regedit)。

导航到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient。

找到名为 SpecialPollInterval 的DWORD值,双击打开,在“数值数据”中填入期望的同步间隔(以秒为单位)即可调整同步频率。

注意: SpecialPollInterval 值的设置必须在位于 MinPollInterval 和 MaxPollInterval 之间,否则 NTP 客户端不会按 SpecialPollInterval 预期同步。具体请参考:京准电钟课堂:NTP时钟同步时客户端未按预期同步 。

Linux平台

chrony 既可作时间服务器服务端,也可作客户端。性能比 ntp 好,且配置管理方便。chrony 由两个程序组成,分别是 chronyd 和 chronyc。chronyd 是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。chronyc 提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在 chronyd 实例控制的计算机上工作,也可以在一台不同的远程计算机上工作。

以 NTP 工具 Chrony 为例,具体步骤如下:

  • 安装chrony
1
2
3
4
5
6
7
8
9
10
11
# 查看 chrony 依赖的包
apt-cache depends chrony

# 安装chrony,观察chrony依赖的包
sudo apt-get install chrony

# 下载 chrony及其依赖包
apt-get download chrony

# 离线安装chrony
sudo dpkg -i *.deb
  • 修改配置文件 /etc/chrony/chrony.conf
1
2
# 注释默认的 NTP 服务器pool,配置上级时间服务器
server 192.168.1.30 iburst
  • 重启chrony服务
1
2
3
4
5
6
7
8
9
10
11
# 获取 chronyd 的PID
pgrep chronyd

# 直接终止(推荐)
kill <chronyd的PID>

# 强制终止(如果进程没有响应)
kill -9 <chronyd的PID>

# 启动 chronyd
sudo chronyd
  • 查看并等待与NTP服务器同步
1
2
3
4
# 确保你的chrony服务器自身已经成功与上层服务器同步。可以通过 chronyc sources 命令检查,服务端需要先成功同步时间,才能为客户端提供同步服务, NTP服务器前设置 ^* 表示已与该服务区时钟同步。

chronyc sources -v
chronyc sourcestats -v
  • 手动同步NTP客户端时间
1
sudo chronyc -a makestep

参考链接

  1. NTP协议学习笔记,by jackhaung.
  2. WINDOWS 10如何配置NTP服务(Server&Client),by 胡浪波.
  3. windows系统时间同步及同步频率设置,by li88811.
  4. 第三章:ubuntu 24.04.1 ntp服务安装,by 王小二.
  5. Ubuntu部署NTP服务器和客户端,by lsgxeva.
  6. 京准电钟课堂:NTP时钟同步时客户端未按预期同步 , by 安徽京准2024.

逻辑学入门读书笔记

发表于 2025-09-14

为了更好的有效的沟通,及时准确的发现对方言语中的逻辑谬误,以便有理有据精准反驳,学习一点逻辑学知识是非常有必要的。阅读格桑老师的《逻辑学入门》,做点读书笔记。

目录

001 01. “老师,我不认识孙中山” 偷换概念
003 02. “买一送一,原来是这样的啊” 混淆概念
005 03. “你说的千里马,明明就是蛤蟆嘛” 模糊概念
007 04. “所有的天鹅都应该是白色的” 归纳谬误
009 05. “为什么总会有人将错就错” 协和谬误
011 06. “上不了好学校,将来就会学坏吗” 滑坡谬误
013 07. “我就不信我赢不了” 赌徒谬误
015 08. “贫穷和疾病不是偷窃的理由” 诉诸怜悯
017 09. “多数人认为对的,不一定是真理” 诉诸大众
019 10. “我一直躺着看书,也没有近视” 诉诸个体
020 11. “经验这个东西,并非都那么可靠” 诉诸经验
022 12. “没人能证明你是对的,所以别跟我争辩” 诉诸无知
024 13. “请你相信我,那只是一个例外” 诉诸规则以外
025 14. “如果做不到完美,就干脆不要做” 诉诸完美
027 15. “我只是偷了东西,又没有伤人” 诉诸最差
029 16. “如果你不相信,我说了也没用” 诉诸信心
031 17. “卧室里放这个,全家得癌症” 诉诸恐惧
033 18. “你说喝酒对身体不好,你不也喝吗” 诉诸反诘
035 19. “不说话,肯定就是你弄坏的” 诉诸沉默
037 20. “如果你不想被开除,就得遵守这一规则” 诉诸势力
040 21. “无利不早起,他这么做一定有所图” 动机论
042 22. “这是名人说的,难道也是错的吗” 诉诸权威
044 23. “谎言重复一千遍,也不会变成真理” 重复谎言
046 24. “开这么好的车,肯定是父母有钱” 强制推理
047 25. “太阳傍晚下山,是因为保姆阿姨回家了” 因果混淆
049 26. “挂一个鸟笼,就一定要养鸟吗” 惯性思维
051 27. “有其父必有其子,是不是真的呢” 诉诸出身
053 28. “我的鸡蛋是臭的?你才是臭的呢” 诉诸人身
055 29. “有意义就是好好活,好好活就是做有意义的事” 循环论证
058 30. “再逼真的稻草人,也不是真实的人” 稻草人谬误
060 31. “骆驼挂铃铛和高塔挂铃铛,不是一回事” 转移论题
063 32. “刻舟求剑的楚国人,到底错在哪儿了” 诉诸感觉
066 33. “你的假设有问题,别想误导我” 预设谬误
071 34. “这样的结果很可怕,你掂量掂量” 诉诸后果
074 35. “我不想出国,所以没必要学英语” 否定前件
077 36. “东施效颦,为什么越闹越丑” 机械类比
079 37. “如果再给我一次机会,我一定……” 无理假设
081 38. “双重否定等于肯定,是这样的吗” 双否定前提
083 39. “所有的天鹅,都有白色的羽毛” 不当周延
085 40. “所有的科莱特人都是说谎者” 罗素悖论
088 41. “鲍西亚的肖像藏在哪个匣子中” 排中律
091 42. “为什么是这样,而不是那样呢” 充足理由律
093 43. “妈妈,师范大学在哪儿呢?” 范畴错误
095 44. “天才是1%的灵感加上99%的汗水” 断章取义
097 45. “嗯?有两个报社的记者参加……” 结构歧义
099 46. “那里的老鼠没有一只是驼背的” 隐含命题
102 47. “套用你的话,看你还能怎么狡辩” 同构意悖
105 48. “说了半天,跟什么都没说一样” 分解问题
108 49. “不是这个,就是那个,没有中间物” 虚假两分
111 50. “你如何知道它是真的,能证明吗” 事实断言
114 51. “只要支付全款的10%就行了” 隐瞒证据
117 52. “不好直接回答时,就回答点别的” 答非所问
119 53. “什么是‘正’,什么是‘不正’” 绝对化谬误
122 54. “诡辩家的半费之讼,你看懂了吗” 二难诡辩术
127 55. “导致这种结果的原因只有一个吗” 简化因果关系
129 56. “中国人民银行的资金有18元8角8分” 故意歪解
131 57. “阴沉着脸,是因为心情不好” 命名谬误
133 58. “小明是小明爸爸的儿子” 同语反复
135 59. “明天约好了去爬山,所以明天肯定是晴天” 一厢情愿
137 60. “所有男人都喜欢看世界杯吗” 区群谬误
139 61. “说不上来,就是有一种感觉” 直觉思维
141 62. “这个项目结束后,起码能赚二三十万” 预期理由
143 63. “萧敬腾一开演唱会,肯定会下雨” 巧合谬误
145 64. “给懒惰的农民发两头牛,他们就勤奋了” 因果倒置
148 65. “夸奖让学生成绩下降,责骂让学生成绩进步” 回归谬误
150 66. “和尚动得,为何我动不得” 推不出来
151 67. “下半年有富余的话,我肯定借给你” 设定条件
153 68. “抽烟会影响空气质量,赶紧戒了吧” 无足轻重
155 69. “自古以来,家务活都是女人做的” 诉诸传统
158 70. “我们该为别人的盲目行为负责吗” 说即劝说
160 71. “狂放之士,用他有什么益处呢” 以人为据
162 72. “盗书,怎么能算是偷呢” 说文解字
165 73. “你的动作总是出错,不是跳舞的料” 过度引申
167 74. “人的眼睛有5.76亿像素,却终究看不懂人心” 不当类比
170 75. “眼见都不一定为实,更何况道听途说呢” 诉诸传言
171 76. “本命年穿红色衣服,就会有好运吗” 破除迷信
173 77. “简单答案?算了吧……” 简单答案不存在
175 78. “思维卡壳的时候,你该怎么办” 触类旁通
177 79. “能不能把话说得明白一点儿” 中性词语
179 80. “打破砂锅问到底,直至找出满意的答案” 追踪思维
181 81. “葡萄那么酸,我才不想吃呢” 合理化
183 82. “是团体中的成员太蠢了” 集体思维
186 83. “你不认为这么想是合理的吗” 诱导性问题
188 84. “把最胖的那位科学家丢出去” 求易思维
190 85. “组合的力量是无穷的……” 组合思维
192 86. “我喊‘3’的时候大家一起睁开眼” 逆向思维
194 87. “下次不下雨的时候,献祭活人就是了” 在此之后
196 88. “抽维珍妮细烟能让女性身材变纤细吗” 固定联想

参考链接

  1. 逻辑学入门,by 格桑.
  2. 逻辑学入门,by scribd.

一起因代理设置不当导致网站无法访问的排故记录

发表于 2025-08-02

最近公司遇到一起网站无法访问的故障,记录一下排骨过程。

现象描述

某工位人员电脑突然无法访问公司 web 服务器上部署的网站。

排故过程

  1. 其他工位人员能够访问公司 web 服务器上部署的网站,说明非 web 服务器原因。
  2. 目标工位人员电脑能够 ping 通 web 服务器,说明底层通信链路完好,无法访问是该工位人员电脑自身原因。
  3. 关闭目标工位人员电脑防火墙,仍旧不能访问,说明与防火墙阻挡无关。
  4. 检查网络代理。最终通过 wireshark 抓包查明是该工位人员电脑设置网络代理,导致无法访问公司 web 服务器。

参考链接

  1. 代理服务器,by wikipedia.

AutoGluon使用帮助

发表于 2025-07-23 | 更新于 2025-07-24

最近在看李沐大神的动手学深度学习的视频,看到大神努力地推荐AutoGluon,说它能够让普通人很容易上手使用深度学习模型,因此学习一下。

介绍

AutoGluon由AWS AI开发,自动化机器学习任务,使您能够轻松地在应用程序中实现强大的预测性能。只需几行代码,您就可以在图像、文本、时间序列和表格数据上训练和部署高精度的机器学习和深度学习模型。

安装

使用conda创建一个环境,再在该环境上安装AutoGluon。

1
2
3
4
5
conda create -n autogluon python=3.11
conda activate autogluon
conda install -c conda-forge mamba
mamba install -c conda-forge -c pytorch -c nvidia autogluon "pytorch=*=*cuda*"
mamba install -c conda-forge "ray-tune >=2.10.0,<2.32" "ray-default >=2.10.0,<2.32" # install ray for faster training

测试

使用如下代码快速演示:

1
2
3
from autogluon.tabular import TabularPredictor
predictor = TabularPredictor(label="class").fit("train.csv")
predictions = predictor.predict("test.csv")

参考链接

  1. 使用开源 AutoML 库 AutoGluon 进行机器学习,by Shashank Prasanna.
  2. AutoGluon,一个强大的 Python 库,by 算法金.
  3. AutoGluon-教程1-简单的入门模型,by 愿航.
  4. autogluon,by github.
  5. Installing AutoGluon,by autogluon.

php调试方法

发表于 2025-06-24 | 更新于 2025-06-25

公司一个遗留门户网站需要定期维护,经常需要调试才能确定出问题的地方,因此研究一下php调试的方法,记录一下。

注:该网站使用 php 开发,并采用前后端分离的架构。

通过浏览器打印信息进行调试

在代码中添加 echo、var_dump、print_r 和 exit,在浏览器中查看输出。该方法不适用采用前后端分离架构的门户网站,因为前端通过restful api 访问后端,后端产生的结果不直接显示在浏览器网页中。

使用 XDebug 进行调试

Xdebug 是一款PHP 的调试工具,可以帮助开发者追踪、调试和分析PHP 程序的运行状况。它允许开发者在代码中设置断点,单步执行代码,查看变量值等,从而更有效地排查和解决问题。

参考链接

  1. PHP 调试 - 方式,by kikajack.
  2. Xdebug+phpStorm安装与调试保姆级教程!『通俗易懂』,by GeekerJun.

Conda使用帮助

发表于 2025-06-24 | 更新于 2025-07-12

最近学习《动手学深度学习》第二版这本书,里面用到 miniconda,因此记录一下 Conda 使用方法。

简介

Conda是一个开源跨平台语言无关的包管理与环境管理系统。由“连续统分析”(Continuum Analytics)基于BSD许可证发布。
Conda允许用户方便地安装不同版本的二进制软件包与该计算平台需要的所有库。还允许用户在不同版本的包之间切换、从一个软件仓库下载包并安装。
Conda是用Python语言开发,但能管理其他编程语言的项目(如R语言),包括多语言项目。 Conda可安装Python语言的包,类似于其他基于Python的跨平台包管理器(如wheel 或pip)。

Miniconda 是 Anaconda Distribution 的免费微型安装,仅包含 conda、Python、它们所依赖的软件包以及少量其他有用的软件包。

如果您需要更多软件包,请使用conda install命令从 Anaconda 公共存储库中默认提供的数千个软件包中进行安装,或者从其他渠道(如 conda-forge 或 bioconda)进行安装。

安装

conda 分为 anaconda 和 miniconda,anaconda 是一个包含了许多常用库的集合版本,miniconda 是精简版本(只包含conda、pip、zlib、python 以及它们所需的包),剩余的通过 conda install command 命令自行安装即可;

使用方法

创建环境

1
2
3
4
# 语法
conda create --name <env_name> python=<version> [package_name1] [package_name2] [...]
# 样例 创建一个名为PaddleOCR的环境,python版本为3.7
conda create --name PaddleOCR python=3.7

切换Conda环境

1
2
3
4
5
6
# 语法
conda activate env_name
# 样例 切换到PaddleOCR环境
conda activate PaddleOCR
# 退出当前环境
conda deactivate

查看电脑上已安装的Conda环境

1
2
3
4
5
6
7
8
9
10
11
# 查看当前电脑上所有的conda环境
conda env list

# 激活指定conda环境
conda activate d2l

# 切换到目录
cd /d i:/learn/d2l-zh

# 运行jupyter
jupyter notebook

删除某个Conda环境

1
2
3
4
# 语法
conda remove --name <env_name> --all
# 样例
conda remove --name PaddleOCR --all

使用Conda安装依赖包

1
2
3
4
5
6
7
# 查看当前conda环境安装的所有依赖包
conda list

# 语法
conda install lib
# 样例
conda install requests

参考链接

  1. Conda 使用教程,by zhangruifeng.
  2. Conda ,by wikipedia.
  3. 「详解」conda 安装与使用,by ViatorSun.
  4. 使用Anaconda管理多个版本的Python环境,by 今天只卖大白菜.

采购管理知识学习笔记

发表于 2025-04-23

项目采购管理包括从项目团队外部采购或获取所需产品、服务或成果的各个过程。

项目采购管理过程

项目采购管理过程包括:

  • 规划采购管理
  • 实施采购
  • 控制采购

规划采购管理

规划采购管理是记录采购决策、明确采购方法,及识别潜在卖方的过程。

实施采购

实施采购是获取卖方应答、选择卖方并授予合同的过程。

评标委员会

第二章 评标委员会

第七条 评标委员会依法组建,负责评标活动,向招标人推荐中标候选人或者根据招标人的授权直接确定中标人。

第八条 评标委员会由招标人负责组建。评标委员会成员名单一般应于开标前确定。评标委员会成员名单在中标结果确定前应当保密。

第九条 评标委员会由招标人或其委托的招标代理机构熟悉相关业务的代表,以及有关技术、经济等方面的专家组成,成员人数为五人以上单数,其中技术、经济等方面的专家不得少于成员总数的三分之二。

评标委员会设负责人的,评标委员会负责人由评标委员会成员推举产生或者由招标人确定。评标委员会负责人与评标委员会的其他成员有同等的表决权。

注:评标委员会负责人很重要,负责评标过程节奏的把控,成员工作的分配,因此应当由经验丰富、德高望重的老前辈负责。

评标的准备与初步评审

第三章 评标的准备与初步评审

第二十二条 投标人资格条件不符合国家有关规定和招标文件要求的,或者拒不按照要求对投标文件进行澄清、说明或者补正的,评标委员会可以否决其投标。

第二十三条 评标委员会应当审查每一投标文件是否对招标文件提出的所有实质性要求和条件作出响应。未能在实质上响应的投标,应当予以否决。

注:本阶段评标委员会将对投标人资质和合规性进行审查。

详细评审

第四章 详细评审

第二十八条 经初步评审合格的投标文件,评标委员会应当根据招标文件确定的评标标准和方法,对其技术部分和商务部分作进一步评审、比较。

注:本阶段评标委员将依据评估标准和方法对招标文件进行详细评审。评估标准可分为客观部分和主观部分。客观部分由可量化的评估标准构成,因此,对同一份招标文件,所有评标委员会成员的打分应该是一致的,评标委员会负责人可以在此处进行成员分工。

控制采购

控制采购是管理采购关系、监督合同绩效、实施必要的变更和纠偏,以及关闭合同的过程。

参考链接

  1. 信息系统项目管理师教程(第4版),by douban.
  2. 评标委员会和评标方法暂行规定,by gov.
12…53下一页

Jack Huang

528 日志
68 标签
© 2025 Jack Huang
由 Hexo 强力驱动
|
主题 — NexT.Muse