barriers / 阅读 / 详情

S5000VSA服务器CpU可以升级吗?

2023-07-09 12:36:08
TAG: 服务 cpu sa 00 cp
共1条回复
余辉

一、独立服务器阶段(2005年-2015年)

服务器购买

我的第一台服务器是2005年购买的,CPU是P42.4B(960元),主板使用是服务器专用主板超微P4SCE(1550元),硬盘是迈拓SATA的120G,内存KINGSTON 双512M.主板支持双通道。总共服务器配置下来的价格是5000元,在当时还算不错的入门级服务器。此套配置的好处是服务器散热很好,放在电信机房主板和CPU的温度只有27度。缺点是CPU能力不足,当负荷特别大的时候,CPU经常达到100%.由于主板不支持双CPU,这台服务器还无法通过增加CPU来升级。

我的第二台服务器是2007年购买的,配置是:Intel双核Xeon 5110处理器/支持双路,Intel S5000主板,1G双通道DDR2 ECC FB-DIMM,160G SATA硬盘,新巨电源400W电源,1U加长机箱,总共价格是6500元,虽然价格只比上一台服务器贵1500元,但是性能却提高很大,CPU至今还没有出现100%的情况。这台服务器还有升级空间,将来可以再增加1个Xeon 5110处理器。这样的配置足够支持一个中型的网站了。

服务器托管

服务器托管指的是购买服务器后,将服务器托管到具有较好网络环境和机房设施的网络数据中心(IDC)内,托管的服务器由客户自己进行远程维护。这个托管的费用是持续不断的,服务器托管我尝试过好几个,价格大多都是100M共享带宽为每年6000元,使用情况上看上海托管商的带宽和服务都比深圳的好一些。我原以为服务器托管在本地要比托管在外地好,但事实并不是这样的,比如我的服务器托管在深圳某IDC(我就不点名了),我对这家IDC的服务非常不满,首先是机房ARP横行,到处都是ARP攻击而没人管,其次这个网络从教育网无法访问,另外其诚信很有问题,在服务到期的前几天突然将对我的托管价格提高10%,令人措不及防,想更换IDC都来不及,这实在是把客户当猴耍啊,最后,这家IDC可能和网监分局以及机房的关系也不太好,天天被人拔网线。可见,服务器托管在本地机房并不令人省心啊。

最后,厦门的一家IDC联系我,说可以提供15M独享的带宽和服务器给我,要求用我网站上的广告来交换,对于一个站长来说,网站虽然多了一个广告位,每年却可以减少6000元带宽租用费用,何乐而不为呢,于是我就将网站迁移到了这家IDC上,测试了一下网速,还真不错,没有怎么太限制流量,足够我网站使用了。之后用了这家IDC几年的时间,服务器硬盘坏了两三次,电源坏了两次,每次硬件故障都要停机1、2天时间来修复,对于只有一台服务器的用户来说,没有双机备份就只能承受这样的苦恼了。

二、云服务器阶段(2015年-至今)

从2015年开始,我放弃了在IDC机房托管服务器,而是采用XX云的云服务器ECS方案。

最主要的原因是安全方面的问题。

DDOS攻击

2011年的时候,我和别人在网上掐架,对方辩论不过我,就对我的网站进行DDOS攻击。在相当长的一段时间里,我的博客不断遭到黑客的DDOS和CC攻击,网站在攻击的大部分时间都无法访问,不胜其扰,机房方面对此却无能为力,一有DDOS攻击,就先停用我的服务器IP,让我对机房感到十分不满,我不得不购买机房的硬件防火墙,花费了大量成本,网站维护成本持续上升。后来听说很多黑客用我的网站做为DDOS练手,让我感到哭笑不得。好在,DDOS攻击也是要花钱的,对方攻击了一阵子也就停了。

压垮骆驼的最后一根稻草是2015年的那次DDOS攻击。

那次DDOS攻击最让我感到莫名其妙,没感觉招惹什么人,也没人提什么警告和要求,就直接DDOS攻击,这让人摸不着头脑,攻击时间很很长,可能是因为DDOS攻击成本大幅下降的原因。

由于攻击流量比较大,导致机房的相关IP段全都宕机,我折腾了一天也没折腾好。然后购买了机房的硬件防火墙,没想到流量可能超过了10G,把机房的硬件防火墙也被打趴下了。

之后,我临时将博客转移到一台美国虚拟主机上,博客的访问开始正常了。一开始的时候,美国的虚拟主机对于DDOS的防御较好,虽然有时候会出现中断,但不久就会恢复,本以为美国的虚拟主机能够抵挡一阵,没想到几天后发现美国虚拟主机的IP无法从国内访问了,一开始我以为是主机被DDOS给打趴下了,于是联系美国主机的客服,美国的时间正好和中国相反,我们白天他们正好晚上,处理了半天说服务器正常。然后我仔细研究了一下才发现,美国虚拟主机用防火墙把中国地区的IP全都给屏蔽了。

是的,就是这么简单粗暴,他们采取的是最简单的处理方法来对付巨大的DDOS攻击,就是直接把中国地区的IP全部屏蔽,这样来自中国的DDOS攻击就对主机商没有任何影响了,但正常的中国用户也无法访问网站了。

迁移云服务器

没办法,还得把主机迁移到国内,于是,我寻找其他的网站服务器托管方案,最后选择了XX云的云服务器ECS方案,因为XX云可以免费提供5G的DDOS防御,价格也很便宜,每年只需要2000-3000元左右,相比去电信机房托管服务器,价格大幅下降。XX云的同学也和热情,帮我配置了高防,隐藏了服务器IP地址,之后,世界都安静了,博客运行都恢复正常,DDOS攻击被清洗了。

在过去的五年多使用期间,大部分DDOS攻击都被XX云的系统清洗了,省心省力,在系统安全性和备份上也很省心,没有一次硬件故障,没有一次硬盘损坏,相比以前的机房托管方案真是物美价廉。看来还真是因祸得福,通过一次DDOS攻击,让我换用了更好更安全的服务器解决方案。

相关推荐

Numberofprocessors是什么意思

Number of processors 处理器数量numbern. 数量; 号码; 数字; 编号; v. 标号; 总计; 把…算作processorsn. 加工( processor的名词复数 ); 数据处理机; (计算机的)中央处理器; 加工机(或工人)
2023-07-09 11:32:291

2 processors是什么意思

两个处理器
2023-07-09 11:32:374

电脑Xeon Scalable Processors是什么意思

两个处理器,至于是不是双核,不太了解。双核处理器(DualCoreProcessor):双核处理器是指在一个处理器上集成两个运算核心,从而提高计算能力。首先要了解双核。请看Intel和AMD各自的双核,我们重点是学习它们的区别,只有在了解之后才能知道,选哪一个更好,或者更有性价比。要指正的是,intel和AMD的缓存的用处是不一样的,并不能直接相比,转贴中关于缓存的说法是错的。AMDL1缓存与L2缓存和INTELL1缓存L2缓存大小无可比性,大家可不要乱来比。INTEL的L1缓存是数据代码指令追存缓存,而AMDL1缓存是实数据读写缓存。INTERLL1缓存里(电脑自动关机)存着数据在L2缓存里(电脑自动关机)的地址,L1缓并不存有实际数据,所以大家看到INTELCPU的L1缓存都比较小。相反AMDL1缓存里(电脑自动关机)则存实际数据,当L1缓存满了时,再把数据存到L2缓存,所以大家看到AMDCPU的L1缓存都比较大,为128K。因为L1缓存比L2缓存的延迟速度更小,所以在缓存上,AMDCPU比INTELCPU的效率更高。而说起L2缓存的大小,我们强调INTELCPU的L2缓存超大,不过L2缓存其实在一般使用中并没起到什么作用,反而倒浪费了消费者钱。CPU处理数据概率,CPU使用0-128K缓存的概率是80%。CPU使用128-256K缓存的概率是10%。CPU使用256-512K缓存的概率是5%。CPU使用512-1M缓存的概率是3%。CPU使用更大缓存的概率是2%。所以说太大的缓存并不是很有用。AMD和Intel的内存控制的架构都不一样,仅仅用几个数据根本无法反映出实际情况,实际上是AMD的架构更不存在瓶颈,Intel的共享FSB架构需要和其它硬件设备争夺带宽,延迟也大,大L2的目的也正是为了降低FSB瓶颈的影响。双核处理器可以说是CPU领域最大的亮点。毕竟X86处理器发展到了今天,在传统的通过增加分支预测单元、缓存的容量、提升频率来增加性能之路似乎已经难以行通了。因此,当单核处理器似乎走到尽头之际,Intel、AMD都不约而同地推出了自家的双核处理器解决方案:PentiumD、Athlon64X2!。所谓双核处理器,简单地说就是在一块CPU基板上集成两(电脑没声音)个处理器核心,并通过并行总线将各处理器核心连接起来。双核其实并不是一个全新概念,而只是CMP(ChipMultiProcessors,单芯片多处理器)中最基本、最简单、最容易实现的一种类型。
2023-07-09 11:32:441

VM虚拟机中processors如何设置

看你虚拟机的用途,怎么分都行。
2023-07-09 11:32:544

processor-perpetual是什么意思

processor[英][u02c8pru0259u028asesu0259(r)][美][u02c8prɑ:sesu0259]n.加工; 数据处理机; (计算机的)中央处理器; 加工机(或工人); perpetual[英][pu0259u02c8petu0283uu0259l][美][pu0259ru02c8petu0283uu0259l]adj.永久的; 不断的; 无期限的; 四季开花的; processor perpetual处理器的永恒例句:1.Investors in singapore recently could buy so-called perpetual bonds through automated teller machines. 新加坡投资者最近可以通过自动售货机购买所谓的永久债券。
2023-07-09 11:33:024

华硕玩家国度dual intelligent processors 5怎么用?

华硕第五代双智能处理器介绍华硕第五代双智能处理器整合了TPU、EPU、DIGI+ Power Control、Fan Xpert 3与Turbo App等功能,可以激发系统的潜能,通过AI Suite 3应用程序友善的用户介面,来自动平衡系统性能、电源节能、层级与风扇设置。五向全方位优化调校五向全方位优化调校工具程序会根据实时的使用状况,动态调整您的电脑以获得最佳的系统状态。该工具程序涵盖最重要的区域,例如处理器性能、电源节能、稳定的数字电源、低温且安静的风扇控制,以及应用程序的最佳个性化设置来确保您的电脑已经准备好用来玩游戏、娱乐、有生产力或应付任何工作。五向全方位优化调校主画面TPU华硕TPU可让您手动调整CPU频率、CPU核心频率、DRAM频率,以及相关的电压来增强系统的稳定性并提升性能表现。在调整CPU电压设置之前,请先参考CPU说明文件。设置过高的电压,可能会造成CPU永久损害;电压设置过低可能会导致系统不稳定。力求系统稳定,在TPU做的所有更改都不会保存至BIOS设置中,同时也不会保留至下次开机。请使用Save Profile功能保存您自订的超频设置,并字Windows启动后手动载入设置文件。
2023-07-09 11:33:111

Vmware虚拟机 怎么改成2个CPU

这个问题有点菜
2023-07-09 11:33:524

Intel 酷睿i7/i5/i3 (移动处理器) 型号后缀字母含义?

Suffixes to denote:M - Mobile processors.LM - Low voltage mobile processors.UM - Ultra low voltage mobile processors.QM - Quad-core mobile processors.XM - Extreme quad-core mobile processors that feature unlocked Turbo multipliers.E - Embedded mobile processors.LE - Low voltage embedded mobile processors.UE - Ultra low voltage embedded mobile processors.QE - Quad-core embedded mobile processors.
2023-07-09 11:34:012

Hp dx2700mt能升级哪些cpu

您好,中国惠普,很高兴为您服务!根据您的描述,个人查询到这款台式机官方测试过的CPU型号如下,供您参考:1.IntelCeleronDProcessors:IntelCeleronD326Processor(2.53-GHz,256KL2cache,533-MHzFSB),EM64T/XDIntelCeleronD331Processor(2.66-GHz,256KBL2cache,533-MHzFSB),EM64T/XDIntelCeleronD336Processor(2.80-GHz,256KBL2cache,533-MHzFSB),EM64T/XDIntelCeleronD341Processor(2.93-GHz,256KBL2cache,533-MHzFSB),EM64T/XDIntelCeleronD346Processor(3.06-GHz,256KBL2cache,533-MHzFSB),EM64T/XDIntelCeleronD351Processor(3.20-GHz,256KBL2cache,533-MHzFSB),EM64T/XDIntelCeleronD355Processor(3.33-GHz,256KBL2cache,533-MHzFSB),EM64T/XD2.IntelPentium4ProcessorswithHyper-ThreadingTechnology:630¨C3.00-GHz,2-MBL2cache,800-MHzFSB,HT/EM64T/XD/EISFF640¨C3.20-GHz,2-MBL2cache,800-MHzFSB,HT/EM64T/XD/EISFF650¨C3.40-GHz,2-MBL2cache,800-MHzFSB,HT/EM64T/XD/EISFF3.IntelCore2Duo(E6xxx)FamilyProcessors:E6700¨C2.66GHz,4-MBL2cache,1066-MHZFSB,VT/EM64T/XD/EISFFE6600¨C2.4GHz,4-MBL2cache,1066-MHZFSB,VT/EM64T/XD/EISFFE6400¨C2.13GHz,4-MBL2cache,1066-MHZFSB,VT/EM64T/XD/EISFFE6300¨C1.86GHz,4-MBL2cache,1066-MHZFSB,VT/EM64T/XD/EISFFE4200¨C1.6GHz,2-MBL2cache,800-MHzFSB,EM64T/XD/EISFF(TrailingCPU)4.IntelPentiumDFamilyProcessors:950¨C3.4GHz,4-MBL2cache,800-MHzFSB,VT/EM64T/XD/EISFF945¨C3.4GHz,4-MBL2cache,800-MHzFSB,EM64T/XD/EISFF(TrailingCPU)940¨C3.2GHz,4-MBL2cache,800-MHzFSB,VT/EM64T/XD/EISFF930¨C3.0GHz,4-MBL2cache,800-MHzFSB,VT/EM64T/XD/EISFF925¨C3.0GHz,4-MBL2cache,800-MHzFSB,EM64T/XD/EISFF(TrailingCPU)915¨C2.8GHz,4-MBL2cache,800-MHzFSB,EM64T/XD/EISFF(TrailingCPU)820¨C2.8GHz,2-MBL2cache,800-MHzFSB,EM64T/XD805¨C2.66GHz,2-MBL2cache,533-MHzFSB,EM64T/XD(TrailingCPU)5.IntelPentium46x1&CeleronD3xxFamilyProcessors:661¨C3.6GHz,2-MBL2cache,800-MHzFSB,HT/EM64T/XD/EISFF651¨C3.4GHz,2-MBL2cache,800-MHzFSB,HT/EM64T/XD/EISFF641¨C3.2GHz,2-MBL2cache,800-MHzFSB,HT/EM64T/XD/EISFF631¨C3.0GHz,2-MBL2cache,800-MHzFSB,HT/EM64T/XD/EISFF541¨C3.2GHz,1-MBL2cache,800-MHzFSB,HT/EM64T/XD531¨C3.0GHz,1-MBL2cache,800-MHzFSB,HT/EM64T/XD524¨C3.06GHz,1-MBL2cache,533-MHzFSB,HT/EM64T/XD360¨C3.46GHz,512KL2cache,533-MHzFSB,EM64T/XD356¨C3.33GHz,512KL2cache,533-MHzFSB,EM64T/XD352¨C3.2GHz,512KL2cache,533-MHzFSB,EM64T/XD如果您有升级台式机配件的需求,推荐您使用惠普品牌的标配备件以避免兼容性的问题发生,欢迎您将联系方式和意向需求发送至hp_expert8@hp.com.我们的销售人员会尽快帮助您的。我是HP员工。如果以上信息没有解决您的问题,您还可以继续追问,或是通过访问惠普技术支持网页(www.hp.com/cn)寻求帮助。感谢您对惠普的支持。
2023-07-09 11:34:251

四核主机,如何分配 CPU 给VM虚拟机?

第一个选三第二个选二去VM官网看不就知道了!何必问!
2023-07-09 11:34:376

我有一台老式的惠普主机,我想自己购买配件来升级,可以良好运行英雄联盟等游戏。

你想问什么
2023-07-09 11:34:554

笔记本开机就出现这个东西cpu=1 Processors Detected,Cores per Processor=2,然后关机

提示风扇有问题,好好检查一下吧
2023-07-09 11:35:045

如何设置进程(线程)在指定的CPU上运行

实现方法进程与指定cpu绑定:SetProcessAffinityMask(GetCurrentProcess(),dwMask);线程与指定cpu绑定:SetThreadAffinityMask(GetCurrentThread(),dwMask);dwMask为CPU序号的或运算值:1(0001)代表只运行在CPU1,2(0010)代表只运行在CPU2,3(0011)代表可以运行在CPU1和CPU2,以此类推。请采纳。。。
2023-07-09 11:35:212

如何将一个应用程序嵌入到java的窗体中

package boom;import javax.swing.*;import javax.swing.border.Border;import java.awt.*;import java.awt.event.ActionListener;import java.awt.event.ActionEvent;import java.math.BigDecimal;import java.math.RoundingMode;import java.util.HashMap;/** * 我的计算器。MyCalculator 继承于 JFrame,是计算器的界面 */public class MyCalculator extends JFrame { private static final long serialVersionUID = 1L; private Border border = BorderFactory.createEmptyBorder(5, 5, 5, 5); private JTextField textbox = new JTextField("0"); private CalculatorCore core = new CalculatorCore(); private ActionListener listener = new ActionListener() { public void actionPerformed(ActionEvent e) { JButton b = (JButton) e.getSource(); String label = b.getText(); String result = core.process(label); textbox.setText(result); } }; public MyCalculator(String title) throws HeadlessException { super(title); // 调用父类构造方法 setupFrame(); // 调整窗体属性 setupControls(); // 创建控件 } private void setupControls() { setupDisplayPanel(); // 创建文本面板 setupButtonsPanel(); // 创建按钮面板 } // 创建按钮面板并添加按钮 private void setupButtonsPanel() { JPanel panel = new JPanel(); panel.setBorder(border); panel.setLayout(new GridLayout(4, 5, 3, 3)); createButtons(panel, new String[] { "7", "8", "9", "+", "C", "4", "5", "6", "-", "CE", "1", "2", "3", "*", "", // 空字符串表示这个位置没有按钮 "0", ".", "=", "/", "" }); this.add(panel, BorderLayout.CENTER); } /** * 在指定的面板上创建按钮 * * @param panel * 要创建按钮的面板 * @param labels * 按钮文字 */ private void createButtons(JPanel panel, String[] labels) { for (String label : labels) { // 如果 label 为空,则表示创建一个空面板。否则创建一个按钮。 if (label.equals("")) { panel.add(new JPanel()); } else { JButton b = new JButton(label); b.addActionListener(listener); // 为按钮添加侦听器 panel.add(b); } } } // 设置显示面板,用一个文本框来作为计算器的显示部分。 private void setupDisplayPanel() { JPanel panel = new JPanel(); panel.setLayout(new BorderLayout()); panel.setBorder(border); setupTextbox(); panel.add(textbox, BorderLayout.CENTER); this.add(panel, BorderLayout.NORTH); } // 调整文本框 private void setupTextbox() { textbox.setHorizontalAlignment(JTextField.RIGHT); // 文本右对齐 textbox.setEditable(false); // 文本框只读 textbox.setBackground(Color.white); // 文本框背景色为白色 } // 调整窗体 private void setupFrame() { this.setDefaultCloseOperation(EXIT_ON_CLOSE); // 当窗体关闭时程序结束 this.setLocation(100, 50); // 设置窗体显示在桌面上的位置 this.setSize(300, 200); // 设置窗体大小 this.setResizable(false); // 窗体大小固定 } // 程序入口 public static void main(String[] args) throws Exception { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); MyCalculator frame = new MyCalculator("我的计算器"); frame.setVisible(true); // 在桌面上显示窗体 }}/** * 计算器核心逻辑。这个逻辑只能处理 1~2 个数的运算。 */class CalculatorCore { private String displayText = "0"; // 要显示的文本 boolean reset = true; private BigDecimal number1, number2; private String operator; private HashMap<String, Operator> operators = new HashMap<String, Operator>();private HashMap<String, Processor> processors = new HashMap<String, Processor>(); CalculatorCore() { setupOperators(); setupProcessors(); } // 为每种命令添加处理方式 private void setupProcessors() { processors.put("[0-9]", new Processor() { public void calculate(String command) { numberClicked(command); } }); processors.put("\.", new Processor() { public void calculate(String command) { dotClicked(); } }); processors.put("=", new Processor() { public void calculate(String command) { equalsClicked(); } }); processors.put("[+\-*/]", new Processor() { public void calculate(String command) { operatorClicked(command); } }); processors.put("C", new Processor() { public void calculate(String command) { clearClicked(); } }); processors.put("CE", new Processor() { public void calculate(String command) { clearErrorClicked(); } }); } // 为每种 operator 添加处理方式 private void setupOperators() { operators.put("+", new Operator() { public BigDecimal process(BigDecimal number1, BigDecimal number2) { return number1.add(number2); } }); operators.put("-", new Operator() { public BigDecimal process(BigDecimal number1, BigDecimal number2) { return number1.subtract(number2); } }); operators.put("*", new Operator() { public BigDecimal process(BigDecimal number1, BigDecimal number2) { return number1.multiply(number2); } }); operators.put("/", new Operator() { public BigDecimal process(BigDecimal number1, BigDecimal number2) { return number1.divide(number2, 30, RoundingMode.HALF_UP); } }); } // 根据命令处理。这里的命令实际上就是按钮文本。 public String process(String command) { for (String pattern : processors.keySet()) { if (command.matches(pattern)) { processors.get(pattern).calculate(command); break; } } return displayText; } // 当按下 CE 时 private void clearErrorClicked() { if (operator == null) { number1 = null; } else { number2 = null; } displayText = "0"; reset = true; } // 当按下 C 时,将计算器置为初始状态。 private void clearClicked() { number1 = null; number2 = null; operator = null; displayText = "0"; reset = true; } // 当按下 = 时 private void equalsClicked() { calculateResult(); number1 = null; number2 = null; operator = null; reset = true; } // 计算结果 private void calculateResult() { number2 = new BigDecimal(displayText); Operator oper = operators.get(operator); if (oper != null) { BigDecimal result = oper.process(number1, number2); displayText = result.toString(); } } // 当按下 +-*/ 时(这里也可以扩展成其他中间操作符) private void operatorClicked(String command) { if (operator != null) { calculateResult(); } number1 = new BigDecimal(displayText); operator = command; reset = true; } // 当按下 . 时 private void dotClicked() { if (displayText.indexOf(".") == -1) { displayText += "."; } else if (reset) { displayText = "0."; } reset = false; } // 当按下 0-9 时 private void numberClicked(String command) { if (reset) { displayText = command; } else { displayText += command; } reset = false; } // 运算符处理接口 interface Operator { BigDecimal process(BigDecimal number1, BigDecimal number2); } // 按钮处理接口 interface Processor { void calculate(String command); }}
2023-07-09 11:35:301

java中,谁能告诉我下面中的“\”是表示什么,可不可以去掉,还有“[0-9]”是什么意思?

\表示转义反斜杠,常用在正则表达式。"\."表示转义点号,将.视为正常的标点符号.而不是正则表达式的.(正则表达式.表示任意字符)能不能去掉得看你自己的代码了。
2023-07-09 11:35:391

JMeter基础

一、Jmeter简介 —-->生成不同格式的测试报告 以WEB性能测试为例:jmeter可以作为web服务器与浏览器之间的代理网关,以便捕获浏览器的请求和web服务器的响应,如此就可以很容易地生成性能测试脚本。有了性能测试脚本,jmeter就可以通过线程来模拟真实用户对web服务器的访问压力。这与LoadRunner的工作原理基本一致( 向服务器提交请求;从服务器获取请求返回的结果 ) 二、JMeter下载安装 1、安装环境要求 Unix(Solaris,Linux,etc) 、 Windows(98,NT,2000,XP,WIN8) 2、JDK下载、安装 右键计算机属性->高级系统设置->系统属性->高级->环境变量->添加如下的系统变量: 变量值:D:Program FilesJavajdk1.8.0_92【jdk安装路径】 变量值: .;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar; 运行cmd->输入java -version->显示java版本就表示jdk安装成功 3、JMeter下载安装 4、JMeter环境配置 变量值:E:apache-jmeter-4.0 (就是jmeter保存的路径,即jmeter解压路径) 如:JMETER_HOME=D:apache-jmetesapache-jmeter-4.0 变量值: ;%JMETER_HOME%/lib/ext/ApacheJMeter_core.jar;%JMETER_HOME%/lib/jorphan.jar;%JMETER_HOME%/lib/logkit-2.0.jar 5、Jmeter 的Bin目录下的几个重要文件 6、启动Jmeter 三、JMeter组件介绍 (JMeter常用组件) 1、测试计划(Test Plan) 注:什么是元素? JMeter的不同组件称为Elements。 每个元素都是为特定目的而设计的。 2、线程组(Threads) 例如,如果将线程数设置为100; JMeter将创建并模拟100个用户对被测服务器的请求 所有的控制器和取样器都是在某个线程组下; 3、逻辑控制器(Logic controller) 逻辑控制器允许在线程中定义处理请求的顺序。它允许控制“何时”将用户请求发送到Web服务器。例如,可以使用随机控制器随机向服务器发送HTTP请求 例如:我们在收邮件时,只需要登录一次邮箱既可查看多封邮件。如果这个场景我们在Jmeter中实现,我们需要控制登录的次数,如何实现呢?Jmeter逻辑控制器中的仅一次控制器就可以完成。当然了,控制器不只是这一个,还有很多其他的控制器来完成我们的各种需求。 除了为“线程组”指定的循环值之外,循环控制器使取样器运行一定次数。例如,如果你 将一个HTTP请求添加到循环控制器,循环计数为50 将“线程组”循环计数配置为2 然后,JMeter将发送总共50 * 2 = 100个HTTP请求。 除了循环值= 2,你为上面的线程组指定。所以JMeter将发送总共2 * 50 = 100个HTTP请求。 又如:线程组中设置循环次数3,循环控制器中设置循环测试2, 即:线程组的循环与循环控制器为父子关系,且循环控制器只对子请求有效 注:录制脚本的循环按循环控制器中的调协循环 作为循环控制器的子节点,仅一次控制器在每循环的第一次迭代时均会被执行 HTTP请求、FTP请求、JDBC请求 这3个请求应该运行5次; JMeter将向baidu服务器发送总共5个用户请求。 按顺序,按以下顺序依次发送请求:HTTP请求 - > FTP请求 - > JDBC请求,对于每个循环按随机顺序,请求随机发送,FTP请求 - > HTTP请求 - > JDBC请求 或 JDBC请求 - > FTP请求 - > HTTP请求等 4、配置元件(Config element) 比如CVS Data Set Config,它可以帮助我们从文件中读取测试数据。另外Jmeter也提供了众多的函数来帮我们生成动态数据。 缓存管理器),自动记录服务器返回的Cache信息。简单说就是它为取样器提供预备数据,然后由取样器 发出请求。 入不同的登录凭据。 该登录信息(例如,用户名,密码)可以存储在文本文件中。 JMeter有一个元素,允许您从该文本文件中读取不同的参数。 它是“CSV数据集配置”,用于从文件中读取行,并将它们拆分为变量。 这是CSV数据的示例。 这是一个文本文件,其中包含用于登录目标网站的用户和密码 密码将作为cookie存储在计算机中。下次访问 www.baidu.com 时 ,无需再次登录,因为在浏览器将使用您的Cookie作为用户数据登录。 Cookie管理器会自动存储该cookie,并将其用于将来对该特定网站的所有请求。 此元素允许您设置HTTP请求控制器使用的默认值 server name = google.com PS:在执行顺序方面有个例外,配置元件"用户定义的变量"无论它处于测试树的哪个位置,总是在测试的初始阶段执行。所以个人建议把它放在线程组的开始部分。 5、定时器(Timer)( 固定定时器:思考时间 ) JMeter向http://www.baidu.com创建一个用户请求100次 每个用户请求之间的延迟为5000毫秒 6、前置处理器(Per processors) 7、取样器(Samples) 您将FTP“下载文件”或“上载文件”请求发送到FTP服务器。 JMeter将FTP命令发送到FTP服务器ftp.example.com ,然后从该服务器下载文件Test.txt。 您可以配置JMeter将SQL查询发送到此服务器以检索数据。 如果要测试邮件服务器,可以使用SMTP采样器。 此采样器用于使用SMTP协议发送电子邮件 8、后置处理器(post processors) 9、断言(Assertions) 用过LR的读者应该会知道检查点这个功能,可以帮助我们来判断请求是否成功返回且是否符合要求,在Jmeter中我们不叫检查点,我们叫断言,接触过selenium的也会懂这个概念。就是用一个预设的结果(值、表达式、时间长短等条件)与实际结果匹配,匹配到则成功,反之失败。 APPly to: 适用范围 Main sample and sub-samples:作用于父节点取样器及对应子节点取样器 Main sample only:仅作用于父节点取样器 Sub-samples only:仅作用于子节点取样器 JMeter Variable:作用于jmeter变量(输入框内可输入jmeter的变量名称) 要测试的响应字段: 要检查的项 响应报文 Documeng(text):测试文件 URL样本 响应代码 响应信息 Response Headers:响应头部 Ignore status:忽略返回的响应报文状态码 模式匹配规则: 包括:返回结果包括你指定的内容 匹配:(好像跟Equals查不多,弄不明白有什么区别) Equals:返回结果与你指定结果一致 Substring:返回结果是指定结果的字串 否:不进行匹配 要测试的模式: 即填写你指定的结果(可填写多个),按钮【添加】、【删除】是进行指定内容的管理 10、监听器(Listener) “图形结果”侦听器在图形上显示服务器响应时间 “查看结果树”以基本HTML格式显示用户请求的结果(View Results Tree) 通过察看结果树,我们可以看到每个请求的结果,其中红色的是出错的请求,绿色的为通过。 Thread Name:线程组名称 Sample Start: 启动开始时间 Load time:加载时长 Latency:等待时长 Size in bytes:发送的数据总大小 Headers size in bytes:发送数据的其余部分大小 Sample Count:发送统计 Error Count:交互错误统计 Response code:返回码 Response message:返回信息 Response headers:返回的头部信息 这里绿色的就说明请求是通过的,返回值是200,如果出现红色的 就说明请求失败,这时候可以通过右边的取样器结果和响应数据来查看结果。 用表格可看结果(View Results in Table) 四、组件执行顺序 在同一作用域名范围内(不考虑逻辑控制器),测试计划中的元件按照如下顺序执行。 (1)配置元件(config elements ) (2)前置处理程序(Per-processors) (3)定时器(timers ) (4)取样器(Sampler) (5)后置处理程序(Post-processors) (除非Sampler 得到的返回结果为空) (6)断言(Assertions)(除非Sampler 得到的返回结果为空) (7)监听器(Listeners)(除非Sampler 得到的返回结果为空) 问题 1、为什么要使用jmeter?他可以帮我们解决那些事情?   jmeter主要是做接口测试和性能测试,它支持的协议也不少,用来测试http,数据库并发都是很方便快捷的工具,相对于lr来说更灵活与实用,等等 2、我们在什么时候会使用jmeter?   · 在一个项目中我们可能前段还没有开发完毕我们想看一下服务器的相应数据。   · 比如我们校验数据库有没有做校验,我们可以绕过前端   · 我们想看一下这个接口或者多个接口的并发量是多少,性能怎么样 3、.谁在使用?为什么是他在使用?   一般使用者为开发人员或者测试人员。   开源免费,基于Java编写,可集成到其他系统可拓展各个功能插件   支持接口测试,压力测试等多种功能,支持录制回放,入门简单   相较于自己编写框架活其他开源工具,有较为完善的UI界面,便于接口调试   多平台支持,可在Linux,Windows,Mac上运行 4、使用jmeter需要了解什么?接口与接口之间的联系怎么处理?   · 我们必须了解接口的工作原理   · 需要掌握http中的get和post请求原理   · 需要掌握请求头,响应头,请求体个个字段代表什么意思,并且字段的返回值的各代的含义是什么?   · 响应的状态码各代表什么含义·   · json是什么?   · 接口测试用例的设计方法,以及测试时点   接口之间的联系:   接口与接口之间存在联系,比如上个接口的返回值是下一个接口的入参,那我们就要在上个接口返回值赋值变量,供下一个接口调用。 5、在使用jmeter中我想要的预期结果和实际结果是怎样对比的?   · 我们做所有的测试无非就是预期结果和实际结果作对比,如果预期结果和实际结果作对比,那么这个接口就是可用的,不相等那么这个接口就是有问题的。   ·在jmeter中我们的用断言做实际结果和预期结果的对比,它提供了许多断言方法,其中最常用的就是响应断言,在后面我会专门的写一下响应断言以及一些常用断言的用法。   · 我们还需要知道在jmeter中我们断言的内容是啥?这点是很重要的 7、使用jmeter的是的我们的有哪些方面的提升,jmeter的主流方向是什么?   · 对整个前端与后端的一个相互传输数据原理有了进一步了解   · 可以提高测试效率,可以提早的参与进来,较早的发现问题,减少开发成本,缩短整个产品的上线周期,可以给测试流出充裕的时间,保证产品质量。   ·掌握了接口测试的测试点,已及用例的设计方法。   jmeter测试的主流方向:   · 用于性能测试,压力测试   · 接口测试
2023-07-09 11:35:571

Java入门写一个计算器的程序,要求如图

import javax.swing.*; import javax.swing.border.Border; import java.awt.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.HashMap; /** * 我的计算器。Cheshi 继承于 JFrame,是计算器的界面 c*/ public class Cheshi extends JFrame { private Border border = BorderFactory.createEmptyBorder(5, 5, 5, 5); private JTextField textbox = new JTextField("0"); private CalculatorCore core = new CalculatorCore(); private ActionListener listener = new ActionListener() { public void actionPerformed(ActionEvent e) { JButton b = (JButton) e.getSource(); String label = b.getText(); String result = core.process(label); textbox.setText(result); } }; public Cheshi(String title) throws HeadlessException { super(title); // 调用父类构造方法 setupFrame(); // 调整窗体属性 setupControls(); // 创建控件 } private void setupControls() { setupDisplayPanel(); // 创建文本面板 setupButtonsPanel(); // 创建按钮面板 } // 创建按钮面板并添加按钮 private void setupButtonsPanel() { JPanel panel = new JPanel(); panel.setBorder(border); panel.setLayout(new GridLayout(4, 5, 3, 3)); createButtons(panel, new String[]{ "7", "8", "9", "+", "C", "4", "5", "6", "-", "CE", "1", "2", "3", "*", "", // 空字符串表示这个位置没有按钮 "0", ".", "=", "/", "" }); this.add(panel, BorderLayout.CENTER); } /** * 在指定的面板上创建按钮 * * @param panel 要创建按钮的面板 * @param labels 按钮文字 */ private void createButtons(JPanel panel, String[] labels) { for (String label : labels) { // 如果 label 为空,则表示创建一个空面板。否则创建一个按钮。 if (label.equals("")) { panel.add(new JPanel()); } else { JButton b = new JButton(label); b.addActionListener(listener); // 为按钮添加侦听器 panel.add(b); } } } // 设置显示面板,用一个文本框来作为计算器的显示部分。 private void setupDisplayPanel() { JPanel panel = new JPanel(); panel.setLayout(new BorderLayout()); panel.setBorder(border); setupTextbox(); panel.add(textbox, BorderLayout.CENTER); this.add(panel, BorderLayout.NORTH); } // 调整文本框 private void setupTextbox() { textbox.setHorizontalAlignment(JTextField.RIGHT); // 文本右对齐 textbox.setEditable(false); // 文本框只读 textbox.setBackground(Color.white); // 文本框背景色为白色 } // 调整窗体 private void setupFrame() { this.setDefaultCloseOperation(EXIT_ON_CLOSE); // 当窗体关闭时程序结束 this.setLocation(100, 50); // 设置窗体显示在桌面上的位置 this.setSize(300, 200); // 设置窗体大小 this.setResizable(false); // 窗体大小固定 } // 程序入口 public static void main(String[] args) throws Exception { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); Cheshi frame = new Cheshi("我的计算器"); frame.setVisible(true); // 在桌面上显示窗体 } } /** * 计算器核心逻辑。这个逻辑只能处理 1~2 个数的运算。 */ class CalculatorCore { private String displayText = "0"; // 要显示的文本 boolean reset = true; private BigDecimal number1, number2; private String operator; private HashMap<String, Operator> operators = new HashMap<String, Operator>(); private HashMap<String, Processor> processors = new HashMap<String, Processor>(); CalculatorCore() { setupOperators(); setupProcessors(); } // 为每种命令添加处理方式 private void setupProcessors() { processors.put("[0-9]", new Processor() { public void calculate(String command) { numberClicked(command); } }); processors.put("\.", new Processor() { public void calculate(String command) { dotClicked(); } }); processors.put("=", new Processor() { public void calculate(String command) { equalsClicked(); } }); processors.put("[+\-*/]", new Processor() { public void calculate(String command) { operatorClicked(command); } }); processors.put("C", new Processor() { public void calculate(String command) { clearClicked(); } }); processors.put("CE", new Processor() { public void calculate(String command) { clearErrorClicked(); } }); } // 为每种 operator 添加处理方式 private void setupOperators() { operators.put("+", new Operator() { public BigDecimal process(BigDecimal number1, BigDecimal number2) { return number1.add(number2); } }); operators.put("-", new Operator() { public BigDecimal process(BigDecimal number1, BigDecimal number2) { return number1.subtract(number2); } }); operators.put("*", new Operator() { public BigDecimal process(BigDecimal number1, BigDecimal number2) { return number1.multiply(number2); } }); operators.put("/", new Operator() { public BigDecimal process(BigDecimal number1, BigDecimal number2) { return number1.divide(number2, 30, RoundingMode.HALF_UP); } }); } // 根据命令处理。这里的命令实际上就是按钮文本。 public String process(String command) { for (String pattern : processors.keySet()) { if (command.matches(pattern)) { processors.get(pattern).calculate(command); break; } } return displayText; } // 当按下 CE 时 private void clearErrorClicked() { if (operator == null) { number1 = null; } else { number2 = null; } displayText = "0"; reset = true; } // 当按下 C 时,将计算器置为初始状态。 private void clearClicked() { number1 = null; number2 = null; operator = null; displayText = "0"; reset = true; } // 当按下 = 时 private void equalsClicked() { calculateResult(); number1 = null; number2 = null; operator = null; reset = true; } // 计算结果 private void calculateResult() { number2 = new BigDecimal(displayText); Operator oper = operators.get(operator); if (oper != null) { BigDecimal result = oper.process(number1, number2); displayText = result.toString(); } } // 当按下 +-*/ 时(这里也可以扩展成其他中间操作符) private void operatorClicked(String command) { if (operator != null) { calculateResult(); } number1 = new BigDecimal(displayText); operator = command; reset = true; } // 当按下 . 时 private void dotClicked() { if (displayText.indexOf(".") == -1) { displayText += "."; } else if (reset) { displayText = "0."; } reset = false; } // 当按下 0-9 时 private void numberClicked(String command) { if (reset) { displayText = command; } else { displayText += command; } reset = false; } // 运算符处理接口 interface Operator { BigDecimal process(BigDecimal number1, BigDecimal number2); } // 按钮处理接口 interface Processor { void calculate(String command); } }
2023-07-09 11:36:151

显卡是AMD Radeon HD8600M Series,想外接32寸的2k显示屏?

2D画面无所谓,3D游戏就不要想了,这个卡在2K下基本玩不了什么。
2023-07-09 11:36:242

我这样的配置换什么好可以玩lol 电脑概览 电脑型号 惠普 HP Pro 3085 Microtower PC 操作系统 Microsoft

显卡和CPU是硬伤。。。。。
2023-07-09 11:36:355

有关windows系统变量的问题

http://blog.csdn.net/kingwolf_javascript/article/details/2477234 这个上面有
2023-07-09 11:36:532

FPGA编译错误

数字电路基础有待加强;led_light模块,没有clk信号,没有任何输入,若果是非时序电路,也应该有输入,不然的话,直接把响应的信号接地或者VCC
2023-07-09 11:37:123

怎样调节tomcat缓存大小

 Tomcat有很多方面,我从内存、并发、缓存四个方面介绍优化方法。  一.Tomcat内存优化  Tomcat内存优化主要是对 tomcat 启动参数优化,我们可以在 tomcat 的启动脚本 catalina.sh 中设置 JAVA_OPTS 参数。  JAVA_OPTS参数说明  -server 启用jdk 的 server 版;  -Xms java虚拟机初始化时的最小内存;  -Xmx java虚拟机可使用的最大内存;  -XX:PermSize 内存永久保留区域  -XX:MaxPermSize 内存最大永久保留区域  服务器参数配置  现公司服务器内存一般都可以加到最大2G ,所以可以采取以下配置:  JAVA_OPTS="-Xms1024m -Xmx2048m -XX:PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=256m"  配置完成后可重启Tomcat ,通过以下命令进行查看配置是否生效:  首先查看Tomcat 进程号:  sudo lsof -i:9027  我们可以看到Tomcat 进程号是 12222 。  查看是否配置生效:  sudo jmap – heap 12222  我们可以看到MaxHeapSize 等参数已经生效。、  二.Tomcat并发优化  1.Tomcat连接相关参数  在Tomcat 配置文件 server.xml 中的 <Connector ... /> 配置中  1>参数说明  minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为 10  maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为 75  acceptCount:允许的最大连接数,应大于等于 maxProcessors ,默认值为 100  enableLookups:是否反查域名,取值为: true 或 false 。为了提高处理能力,应设置为 false  connectionTimeout:网络连接超时,单位:毫秒。设置为 0 表示永不超时,这样设置有隐患的。通常可设置为30000 毫秒。  其中和最大连接数相关的参数为maxProcessors 和 acceptCount 。如果要加大并发连接数,应同时加大这两个参数。  web server允许的最大连接数还受制于操作系统的内核参数设置,通常 Windows 是 2000 个左右, Linux 是 1000 个左右。  2>Tomcat中的配置示例  <Connector port="9027"  protocol="HTTP/1.1"  maxHttpHeaderSize="8192"  minProcessors="100"  maxProcessors="1000"  acceptCount="1000"  redirectPort="8443"  disableUploadTimeout="true"/>  2.调整连接器connector的并发处理能力  1>参数说明  maxThreads 客户请求最大线程数  minSpareThreads Tomcat初始化时创建的 socket 线程数  maxSpareThreads Tomcat连接器的最大空闲 socket 线程数  enableLookups 若设为true, 则支持域名解析,可把 ip 地址解析为主机名  redirectPort 在需要基于安全通道的场合,把客户请求转发到基于SSL 的 redirectPort 端口  acceptAccount 监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads )  connectionTimeout 连接超时  minProcessors 服务器创建时的最小处理线程数  maxProcessors 服务器同时最大处理线程数  URIEncoding URL统一编码  2>Tomcat中的配置示例  <Connector port="9027"  protocol="HTTP/1.1"  maxHttpHeaderSize="8192"  maxThreads="1000"  minSpareThreads="100"  maxSpareThreads="1000"  minProcessors="100"  maxProcessors="1000"  enableLookups="false"  URIEncoding="utf-8"  acceptCount="1000"  redirectPort="8443"  disableUploadTimeout="true"/>  3.Tomcat缓存优化  1>参数说明  c ompression 打开压缩功能  compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB  compressableMimeType 压缩类型  connectionTimeout 定义建立客户连接超时的时间. 如果为 -1, 表示不限制建立客户连接的时间  2>Tomcat中的配置示例  <Connector port="9027"  protocol="HTTP/1.1"  maxHttpHeaderSize="8192"  maxThreads="1000"  minSpareThreads="100"  maxSpareThreads="1000"  minProcessors="100"  maxProcessors="1000"  enableLookups="false"  compression="on"  compressionMinSize="2048"  compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"  connectionTimeout="20000"  URIEncoding="utf-8"  acceptCount="1000"  redirectPort="8443"  disableUploadTimeout="true"/>  4.参考配置  1>旧有的配置  参考网络对服务器做过如下配置,拿出来分享下:  <Connector port="9027"  protocol="HTTP/1.1"  maxHttpHeaderSize="8192"  maxThreads="1000"  minSpareThreads="25"  maxSpareThreads="75"  enableLookups="false"  compression="on"  compressionMinSize="2048"  compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"  connectionTimeout="20000"  URIEncoding="utf-8"  acceptCount="200"  redirectPort="8443"  disableUploadTimeout="true" />  后来发现在访问量达到3 百万多的时候出现性能瓶颈。  2>更改后的配置  <Connector port="9027"  protocol="HTTP/1.1"  maxHttpHeaderSize="8192"  maxThreads="1000"  minSpareThreads="100"  maxSpareThreads="1000"  minProcessors="100"  maxProcessors="1000"  enableLookups="false"  compression="on"  compressionMinSize="2048"  compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"  connectionTimeout="20000"  URIEncoding="utf-8"  acceptCount="1000"  redirectPort="8443"  disableUploadTimeout="true"/>
2023-07-09 11:37:211

java 计算器代码

import java.awt.*;import java.awt.event.*;import javax.swing.*;public class three extends JFrame implements ActionListener{ private JPanel jPanel1,jPanel2; private JTextField resultField; private JButton s1,s2,s3,s4,s5,s6,s7,s8,s9,s0,b1,b2,b3,b4,f1,f2; private boolean end,add,sub,mul,div; private String str; private double num1,num2;public three(){ super("计算器"); setSize(300,240); Container con=getContentPane(); con.setLayout(new BorderLayout()); jPanel1=new JPanel(); jPanel1.setLayout(new GridLayout(1,1)); jPanel2=new JPanel(); jPanel2.setLayout(new GridLayout(4,4)); resultField=new JTextField("0"); jPanel1.add(resultField); con.add(jPanel1,BorderLayout.NORTH); s1=new JButton(" 1 "); s1.addActionListener(this); s2=new JButton(" 2 "); s2.addActionListener(this); s3=new JButton(" 3 "); s3.addActionListener(this); s4=new JButton(" 4 "); s4.addActionListener(this); s5=new JButton(" 5 "); s5.addActionListener(this); s6=new JButton(" 6 "); s6.addActionListener(this); s7=new JButton(" 7 "); s7.addActionListener(this); s8=new JButton(" 8 "); s8.addActionListener(this); s9=new JButton(" 9 "); s9.addActionListener(this); s0=new JButton(" 0 "); s0.addActionListener(this); b1=new JButton(" + "); b1.addActionListener(this); b2=new JButton(" - "); b2.addActionListener(this); b3=new JButton(" * "); b3.addActionListener(this); b4=new JButton(" / "); b4.addActionListener(this); f1=new JButton(" . "); f1.addActionListener(this); f2=new JButton(" = "); f2.addActionListener(this); jPanel2.add(s1); jPanel2.add(s2); jPanel2.add(s3); jPanel2.add(b1); jPanel2.add(s4); jPanel2.add(s5); jPanel2.add(s6); jPanel2.add(b2); jPanel2.add(s7); jPanel2.add(s8); jPanel2.add(s9); jPanel2.add(b3); jPanel2.add(s0); jPanel2.add(f1); jPanel2.add(f2); jPanel2.add(b4); con.add(jPanel2,BorderLayout.CENTER); }public void num(int i){ String s = null; s=String.valueOf(i); if(end){ //如果数字输入结束,则将文本框置零,重新输入 resultField.setText("0"); end=false; } if((resultField.getText()).equals("0")){ //如果文本框的内容为零,则覆盖文本框的内容 resultField.setText(s); } else{ //如果文本框的内容不为零,则在内容后面添加数字 str = resultField.getText() + s; resultField.setText(str); } }public void actionPerformed(ActionEvent e){ //数字事件 if(e.getSource()==s1) num(1); else if(e.getSource()==s2) num(2); else if(e.getSource()==s3) num(3); else if(e.getSource()==s4) num(4); else if(e.getSource()==s5) num(5); else if(e.getSource()==s6) num(6); else if(e.getSource()==s7) num(7); else if(e.getSource()==s8) num(8); else if(e.getSource()==s9) num(9); else if(e.getSource()==s0) num(0); //符号事件 else if(e.getSource()==b1) sign(1); else if(e.getSource()==b2) sign(2); else if(e.getSource()==b3) sign(3); else if(e.getSource()==b4) sign(4); //等号 else if(e.getSource()==f1){ str=resultField.getText(); if(str.indexOf(".")<=1){ str+="."; resultField.setText(str); } } else if(e.getSource()==f2){ num2=Double.parseDouble(resultField.getText()); if(add){ num1=num1 + num2;} else if(sub){ num1=num1 - num2;} else if(mul){ num1=num1 * num2;} else if(div){ num1=num1 / num2;} resultField.setText(String.valueOf(num1)); end=true; } }public void sign(int s){ if(s==1){ add=true; sub=false; mul=false; div=false; } else if(s==2){ add=false; sub=true; mul=false; div=false; } else if(s==3){ add=false; sub=false; mul=true; div=false; } else if(s==4){ add=false; sub=false; mul=false; div=true; } num1=Double.parseDouble(resultField.getText()); end=true; } public static void main(String[] args){ three th1=new three(); th1.show(); } }
2023-07-09 11:37:563

用JAVA编写一个计算器

http://www.oschina.net/code/snippet_105887_8300
2023-07-09 11:38:088

tomcat配置的 最大连接数maxProcessors和acceptCount 有什么用,我配置成3,但是第四个用户依然可以访问系

进程数 是个范围 不很准确的
2023-07-09 11:38:324

dual intellectual processors 5怎么超频

开机按下DEL键进入BIOS主菜单,然后进入“Frequency/Voltage Control”选项,在这里可以设置CPU的外频、倍频以及CPU电压等参数,首先先来调整CPU的外频,利用键盘上的"上下"按键使光标移动到“CPU Clock”,然后按回车键即可输入外频频率。
2023-07-09 11:38:421

Windows7启动时显示正在加载系统文件,但不是安全模式

开始 运行 msconfig 引导选项卡 OS引导信息 前面的勾去掉就行了 不过这个不影响系统你好,能够采纳一下回答吗?
2023-07-09 11:38:493

惠普 pro 3380 可以更换cpu么 比如i5-3470 i7 3770K

您好!感谢您选择惠普产品。根据您的描述,建议您参考下列信息:一、您这款机器测试测试过下面规格的CPU,如果您需要升级CPU建议您可以升级下面型号的CPU:IntelCorei3Processors:IntelCorei3-2100Processor(3.1GHz,3MBcache,2C/4T)IntelCorei3-2120Processor(3.3GHz,3MBcache,2C/4T)IntelCorei3-2130Processor(3.4GHz,3MBcache,2C/4T)IntelCorei5Processors:IntelCorei5-2320Processor(3.0GHz,6MBcache,4C/4T,Turbo)??Upto3.3GHzwithIntelTurboBoostTechnologyIntelCorei5-2400Processor(3.1GHz,6MBcache,4C/4T,Turbo)??Upto3.4GHzwithIntelTurboBoostTechnologyIntelCorei5-2400sProcessor(2.5GHz,6MBcache,4C/4T,Turbo)??Upto3.3GHzwithIntelTurboBoostTechnologyIntelCorei5-2500Processor(3.3GHz,6MBcache,4C/4T,Turbo)??Upto3.7GHzwithIntelTurboBoostTechnologyIntelCorei5-2500sProcessor(2.7GHz,6MBcache,4C/4T,Turbo)??Upto3.7GHzwithIntelTurboBoostTechnologyIntelCorei7Processors:IntelCorei7-2600Processor(2.8GHz,8cache,4C/8T,Turbo)???Upto3.8GHzwithIntelTurboBoostTechnologyIntelCeleronProcessors:IntelCeleronG440Processor(1.6GHz,1MBcache,1core)IntelCeleronG530Processor(2.4GHz,2MBcache,2cores)IntelCeleronG540Processor(2.5GHz,2MBcache,2coresIntelPentiumProcessors:IntelPentiumG620Processor(2.6GHz,3MBcache,2C/2T)IntelPentiumG630Processor(2.6GHz,3MBcache,2C/2T)IntelPentiumG840Processor(2.8GHz,3MBcache,2C/2T)IntelPentiumG850Processor(2.9GHz,3MBcache,2C/2T)IntelPentiumG860Processor(3.0GHz,3MBcache,2C/2T)二、如果您需要添加非惠普的硬件设备建议您最好在买的时候当场测试一下,看能否正常的使用,以免存在硬件兼容性问题,给您带来不必要得麻烦! 三、如果您需要添加惠普的硬件设备或需要咨询升级硬件的价格,建议您可以联系下当地的金牌服务中心进行添加和咨询,关于金牌服务中心的联系方式,您可以通过下面的网址选择您所在的省市及所使用的产品类型查询即可:http://www8.hp.com/cn/zh/support-drivers/esupport/ascpps.html希望以上回复能够对您有所帮助。
2023-07-09 11:38:562

你好,我公司电脑是惠普HP Pro 3330 MT,现在想升级配置,请问我可以换一块 英特尔 i5 3570的CPU吗?

可以的
2023-07-09 11:39:055

如何在华硕8系列主板上使用新一代的英特尔第四代core系列处理器

安装上即可!
2023-07-09 11:39:213

[15]es线程池的优化

上面截取了部分线程池的配置,其中,最需要关注的是rejected。当某个线程池active==threads时,表示所有线程都在忙,那么后续新的请求就会进入queue中,即queue>0,一旦queue大小超出限制,如bulk的queue默认50,那么elasticsearch进程将拒绝请求(碰到bulk HTTP状态码429),相应的拒绝次数就会累加到rejected中。 1、记录失败的请求并重发 2、减少并发写的进程个数,同时加大每次bulk请求的size ES核心线程池: generic:通用操作,如node discovery。它的类型默认为scaling。5.x以后取消了cached类型 index:此线程池用于索引和删除操作。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为200,最大线程池大小是可用处理器+1 search:此线程池用于搜索和计数请求。它的类型默认为fixed,size默认为(可用处理器的数量* 3) / 2) + 1,队列的size默认为1000。 get:此线程池用于实时的GET请求。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为1000。 bulk:此线程池用于批量操作。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为200。 percolate:此线程池用于预匹配器操作。它的类型默认为fixed,size默认为可用处理器的数量,队列的size默认为1000。 snaphot:For snapshot/restore operations. Thread pool type is scaling with a keep-alive of 5m and a max ofmin(5, (# of available processors)/2). warmer:For segment warm-up operations. Thread pool type is scaling with a keep-alive of 5m and a max ofmin(5, (# of available processors)/2). refresh:For refresh operations. Thread pool type is scaling with a keep-alive of 5m and a max of min(10, (# of available processors)/2). listener:Mainly for java client executing of action when listener threaded is set to true. Thread pool type isscaling with a default max of min(10, (# of available processors)/2). 线程池类型: 1、cached 5.x以后取消了cached类型 无限制的线程池,为每个请求创建一个线程。这种线程池是为了防止请求被阻塞或者拒绝,其中的每个线程都有一个超时时间(keep_alive),默认5分钟,一旦超时就会回收/终止。elasticsearch的generic线程池就是用该类型。发现在5.0.0-alpha2版本中去掉了该类型的线程池。 2、fixed 有着固定大小的线程池,大小由size属性指定,默认是5*cores数,允许你指定一个队列(使用queue_size属性指定,默认是-1,即无限制)用来保存请求,直到有一个空闲的线程来执行请求。如果Elasticsearch无法把请求放到队列中(队列满了),该请求将被拒绝。 3、scaling: 可变大小的pool,大小根据负载在1到size间,同样keep_alive参数指定了闲置线程被回收的时间。 修改线程池配置: 1.通过elasticsearch.yml文件进行修改 2.通过Rest API 使用es bulk api时报错如下 EsRejectedExcutionException[rejected execution(queue capacity 50) on.......] 这个错误明显是默认大小为50的队列(queue)处理不过来了,解决方法是增大bulk队列的长度但是会导致cpu消耗高或者降低并发量也可以采用重试的机制,捕获EsRejectedExcutionException异常,然后重新执行上一次的操作。 配置方法: 类似的配置写法如下: 通过restAPI设置: Elasticsearch的线程池其实就是对Java自带的进行封装,虽然用户可以更改相关配置,但官方强烈不建议去修改默认值,在项目的实际使用中,我们也是对es的bulk线程配置做了调整。主要是通过type、queue_size、reject_policy来优化性能 参考链接: http://rockelixir.iteye.com/blog/1890867 官网关于thread_pool的链接: https://www.elastic.co/guide/en/elasticsearch/reference/5.4/modules-threadpool.html#processors
2023-07-09 11:39:281

华硕玩家国度dual intelligent processors 5怎么用啊。。。完全看不明白啊。。。

就是在华硕智能管家里面,靠近左上角有个按键,点了,点击开始,就可以了。自动的。过程会重启几次,测试你处理器最强性能,我6600k好像是到4.9才出现蓝屏重启的。
2023-07-09 11:39:503

电脑一开机就出现cpu=1 processors detected, cores per processor=2

这电脑太老了吧,你确定你还要用??
2023-07-09 11:40:282

onee1001的处理器是什么型号

onee1001的处理器是什么型号?Onee1001ProcessingUnit:WhatModelIsit?Onee1001isatermthathasbeenpoppinguprecentlyindiscussionsaboutprocessors.ItisapartofGooglesinfrastructureusedintheirdatacenters,servingasoneofthecorecomponentstoruntheirvastnumberofonlineservices.Thequestiononeveryonesmindis,whattypeofprocessorisit?Firstly,itisimportanttonotethatOnee1001isnotaspecificprocessormodel,butratheracodenameusedbyGoogletorefertoacollectionofprocessorsusedintheirservers.AsGooglehasalwaysprioritizedefficiency,itiscrucialforthemtousethelatestandmostpowerfulprocessorsintheirdatacenterstohandletheenormousamountofdataprocessingandcomputationaltasksrequiredfortheservicestheyprovide.Googleisknownforrelyingontheirowncustom-designedprocessorsintheirdatacenters,insteadofutilizingcommerciallyavailableprocessors.In2015,theyannouncedthecreationoftheirowncustomchip,theTensorProcessingUnit(TPU),whichisoptimizedspecificallyformachinelearningtasks.TheTPUhasbeenagame-changerfortheindustry,allowingGoogletoprocesshugeamountsofdataordersofmagnitudefasterandwithgreateraccuracythanpreviouslypossible.ItisunclearwhetherOnee1001issolelyreliantontheTPUorifitusesotherGoogle-designedprocessorsorcommerciallyavailableprocessors.However,itissafetoassumethatitisahigh-performanceprocessordesignedtomeetGooglesexactingstandards.Inconclusion,Onee1001isnotaspecificprocessormodelbutisratherabroadcategoryofprocessorsusedbyGoogleintheirdatacenters.AsGooglescustom-designedprocessorshaveproventobesuccessfulinhandlingtheirmassivecomputationalneeds,itislikelythatOnee1001utilizesoneoftheircustom-designedprocessorsoracombinationofthoseandcommerciallyavailableprocessors.
2023-07-09 11:40:361

CPU=1 Processors Detected;Cores per Porcessor=2 Intel(r) Core(TM) i3 CPU M330 @2.13MHz 1976M System

最后一句:EFI变量 块 数据 被破坏,所以应该是内存兼容性问题
2023-07-09 11:40:452

matlab sysic搭建模型

<util:property-path id="property-path" path="helloWorld.hello"/> /bin/arch = unknown/usr/bin/arch -k = unknown/usr/convex/getsysinfo = unknown/usr/bin/hostinfo = Mach kernel version:Darwin Kernel Version 11.4.0d1: Fri May 18 16:05:31 EDT 2012; root:xnu-1699.26.8/BUILD/obj//RELEASE_I386Kernel configured for up to 4 processors.4 processors are physically available.4 processors are logically available.Processor type: i486 (Intel 80486)Processors active: 0 1 2 3
2023-07-09 11:40:531

java程序设计 计算器 求代码

用VC做吧
2023-07-09 11:41:033

cpu=1 Processors Detected,Cores per Processor=2

给你翻译下第一行肯定是你的CPU=1……就是说一个PCU 双核接着就是CPU类T6600内存2G硬盘是富士通的320G硬盘光驱是建基的DVD刻录机鼠标检测到剩下一个是错误什么,应该是系统的问题,估计你用的是xp而不是win7
2023-07-09 11:41:121

用JAVA编写一个计算器

不好意思帮不上你了
2023-07-09 11:41:233

VM虚拟机里额number of cores per processor指的是核心数还是线程数

number of processors 处理器个数number of cores per processor 每个处理器核心数
2023-07-09 11:41:311

maxwell 16 MESH的时候 如何本机多核并行计算加快速度?

在 Tools->Optins->Maxwell 3D Options->Slover->Number of Processors中修改数字为你的处理器核心数,两个输入框都要修改。然后再重新开始计算,就可以看到处理器的占用率提高了。
2023-07-09 11:41:401

VMware运行win2003时有异常 提示

在虚拟机里把核心数设为一个看看由于使用的是AMD64×2平台AMD4200+,安装VMware倒没遇到什么问题,在启动虚拟机时就会提示“你的主机的BIOS未包含有效的NUMA信息。请更新主机的BIOS或将虚拟机与一个单NUMA节点(CEC)的处理器进行关联。请查阅VMware知识库928与1236”。网上查到解决方法如下IsthisanAMDDualcoremachine?Ifso,thishasworkedformeandforothers(seehttp://www.vmware.com/community/thread.jspa?threadID=40354&tstart=120forconfirmation):a)makesureC&Qisdisabled(thismaybeoptional)b)installthelatestprocessordriverc)installthe"AMDDual-CoreOptimizer"whichkeepstheTSC"sinsync.ThoughthisutilwaswrittenprimarilyforgamesapplicationsitseemstohaveadirectimpactonVMWaretoo.bandcarebothavailablefromhttp://www.amd.com/us-en/Processors/TechnicalResources/0,,30_182_871_9706,00.htmlAfterdoingthat,thereisnolongeraNUMAmessage,andtheguestclocksdonotdriftoutofsync.
2023-07-09 11:42:191

惠普me升级

2023-07-09 11:42:312

电脑每次开机时都会出现这种画面,需要按F1才可以启动,还请高手看下这是神马原因,最好能解决!

bios里面去掉软驱检测 如果不行再换一个电池
2023-07-09 11:42:404

CPU检测软件有哪些 5款CPU检测工具介绍 (

补充一个,游戏加加也可以实时检测电脑硬件信息情况
2023-07-09 11:42:504

谁能够给一个有关微处理器的英文介绍啊,3000字左右的就行

不知道盒装CPU里的那一大张说明写的是啥~~
2023-07-09 11:43:412

请问各位大侠 2 processors running是什么意思?双核吗?

完全正确!
2023-07-09 11:43:481

如何设置tomcat最大连接数

Tomcat的server.xml中连接器设置如下<Connector port="8080"maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" acceptCount="100"debug="0" connectionTimeout="20000"disableUploadTimeout="true" /> <Connector port="8080"maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" acceptCount="100"debug="0" connectionTimeout="20000"disableUploadTimeout="true" /> tomcat在配置时设置最大线程数,当前线程数超过这个数值时会出错,那么有没有办法捕获到这个错误,从而在client端显示出错信息?2. 如何加大tomcat连接数在tomcat配置文件server.xml中的<Connector />配置中,和连接数相关的参数有:minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为falseconnectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。其中和最大连接数相关的参数为maxProcessors和acceptCount。如果要加大并发连接数,应同时加大这两个参数。web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。tomcat5中的配置示例:<Connector port="8080"maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" acceptCount="100"debug="0" connectionTimeout="20000"disableUploadTimeout="true" />对于其他端口的侦听配置,以此类推。3. tomcat中如何禁止列目录下的文件在{tomcat_home}/conf/web.xml中,把listings参数设置成false即可,如下:<init-param> <param-name>listings</param-name> <param-value>false</param-value> </init-param> <init-param><param-name>listings</param-name><param-value>false</param-value></init-param>4.如何加大tomcat可以使用的内存tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。Unix下,在文件{tomcat_home}/bin/catalina.sh的前面,增加如下设置:JAVA_OPTS="-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】"需要把这个两个参数值调大。例如:JAVA_OPTS="-Xms256m -Xmx512m"表示初始化内存为256MB,可以使用的最大内存为512MB
2023-07-09 11:43:551

最大连接数如何配置,Spring,Boot内嵌的tomcat8的最大线程数

配置文件中设置server.tomcat.max-threads=10但是最大连接数没有可用的配置,需要自己完成一个servletFactory具体的代码看这个链接这个博客的springboot配置非常全面,你可以去看下
2023-07-09 11:44:032

hd8600m显卡显示分辨率

hd 8600m显卡显示最大分辨率是2560x1600 。这种属于笔记本显卡,HD8600m性能大概等于桌面显卡的GT630,性能还是比较低的,玩主流游戏需要低特效才能流畅 主要参数: 核心代号: G84 适用类型: 笔记本 制造工艺: 80纳米 顶点着色单元: 32个统一渲染单元(Stream Processors 渲染管线: 32个统一渲染单元(Stream Processors 显存位宽: 128bit 显卡接口: PCI Express X16 核心位宽: 256bit DirectX版本: 10 核心频率: 475MHz RAMDAC频率: 400MHz 显存类型: DDR3 nVIDIA GeForce 8600M GT其他参数 RAMDAC频率 400MHz 渲染管线 32个统一渲染单元(Stream Processors,流处理器,着色器),工作频率950MHz 顶点着色单元 32个统一渲染单元(Stream Processors,流处理器,着色器),工作频率950MHz
2023-07-09 11:44:111