免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: iceblood
打印 上一主题 下一主题

[FreeBSD] [有奖讨论]FreeBSD性能的优化,您会怎么做?(获奖名单已公布-2012-12-5) [复制链接]

论坛徽章:
3
CU大牛徽章
日期:2013-05-20 10:43:41CU大牛徽章
日期:2013-05-20 10:44:06CU大牛徽章
日期:2013-05-20 10:44:16
11 [报告]
发表于 2012-10-25 20:42 |只看该作者
fender0107401 发表于 2012-10-25 17:25
回复 6# meego2012

这说明你不会按。。。

版主说的对哈,我只是提个意见
我在linux下安装就很容易,直接apt-get就可以了

为啥bsd就做的这么难使用,这难道是特色么?

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
12 [报告]
发表于 2012-10-26 08:20 |只看该作者
meego2012 发表于 2012-10-25 20:42
版主说的对哈,我只是提个意见
我在linux下安装就很容易,直接apt-get就可以了


你认为所有的linux都能apt-get install foo吗?

论坛徽章:
3
CU大牛徽章
日期:2013-05-20 10:43:41CU大牛徽章
日期:2013-05-20 10:44:06CU大牛徽章
日期:2013-05-20 10:44:16
13 [报告]
发表于 2012-10-26 09:45 |只看该作者
fender0107401 发表于 2012-10-26 08:20
你认为所有的linux都能apt-get install foo吗?


我用的ubuntu和Fedora是可以这样的,之前也试验过archlinux,也是可以这样的

我没有必要这这里撒谎啊

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
14 [报告]
发表于 2012-10-26 09:47 |只看该作者
meego2012 发表于 2012-10-26 09:45
我用的ubuntu和Fedora是可以这样的,之前也试验过archlinux,也是可以这样的

我没有必要这这里撒谎啊 ...


fedora和archlinux也移植了apt系统?

论坛徽章:
3
CU大牛徽章
日期:2013-05-20 10:43:41CU大牛徽章
日期:2013-05-20 10:44:06CU大牛徽章
日期:2013-05-20 10:44:16
15 [报告]
发表于 2012-10-26 10:02 |只看该作者
fender0107401 发表于 2012-10-26 09:47
fedora和archlinux也移植了apt系统?


当然不是啊,他们是自己的包管理系统的啊,但是包依赖的关系解决的比较好,至少比FreeBSD的好

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
16 [报告]
发表于 2012-10-26 10:05 |只看该作者
meego2012 发表于 2012-10-26 10:02
当然不是啊,他们是自己的包管理系统的啊,但是包依赖的关系解决的比较好,至少比FreeBSD的好


扯淡。

论坛徽章:
13
15-16赛季CBA联赛之同曦
日期:2016-01-28 19:52:032015亚冠之北京国安
日期:2015-10-07 14:28:19NBA常规赛纪念章
日期:2015-05-04 22:32:03处女座
日期:2015-01-15 19:45:44卯兔
日期:2014-10-28 16:17:14白羊座
日期:2014-05-24 15:10:46寅虎
日期:2014-05-10 09:50:35白羊座
日期:2014-03-12 20:52:17午马
日期:2014-03-01 08:37:27射手座
日期:2014-02-19 19:26:54子鼠
日期:2013-11-30 09:03:56狮子座
日期:2013-09-08 08:37:52
17 [报告]
发表于 2012-10-26 10:34 |只看该作者
meego2012 发表于 2012-10-26 10:02
当然不是啊,他们是自己的包管理系统的啊,但是包依赖的关系解决的比较好,至少比FreeBSD的好

我个人感觉freebsd做的更好、管理也方便! ^_^

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
18 [报告]
发表于 2012-10-26 14:56 |只看该作者
楼上几位,有脚踏骑三轮车的经验吗?
一直骑两轮的自行车,直接上三轮车,有很大机率冲入路边的渠道里。

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
19 [报告]
发表于 2012-10-26 15:33 |只看该作者
本帖最后由 lsstarboy 于 2012-10-26 15:41 编辑

一、FreeBSD的优化您是重新编译内核还是使用sysctl.conf或者loader.conf?
    1、作为服务器用,重新编译内核是必须的,主要目的有两个:(1)去掉一些不用的模块,使内核更小,加载的速度会更快;
  (2)加一些优化的参数,性能会更好。
    我必用的几个:
        去掉调试信息:makeoptions, KTRACE,stack,
        我不用nfs,所以也去掉
        ipv6去掉,用不着, sctp也用不到
        所有的scsi系列,都是ahci了,服务器一般也不需要U盘,usb和1394都禁掉
        网卡当然保留需要的
        
        smp必用,现在都是多核;
        HZ和polling必用,网卡性能会更好;
        建议把dummynet加上,说不上什么时候就需要控制流量
        我习惯ipfw,把ipfw的那一套加上吧,具体有:
  1. options         LIBALIAS
  2. options         IPFIREWALL              #firewall
  3. options         IPFIREWALL_VERBOSE      #enable logging to syslogd(8)
  4. options         IPFIREWALL_VERBOSE_LIMIT=100    #limit verbosity
  5. options         IPFIREWALL_DEFAULT_TO_ACCEPT    #allow everything by default
  6. options         IPFIREWALL_FORWARD      #packet destination changes
  7. options         IPFIREWALL_NAT          #ipfw kernel nat support
  8. options         IPDIVERT                #divert sockets
  9. options         IPSTEALTH               #support for stealth forwarding
复制代码
新机器别忘了把ahci加上,测试的成绩可能不明显,但是用起来很有效果。
            
    2、sysctl.conf和loader.conf,这两个都要用,用的目的不一样,我的原则是能在sysctl.conf中用的,尽量不要loader.conf中写,一般loader.conf中处理硬件相关的内容,sysctl.conf中处理系统相关的东西。
        具体参数在第三个问题中写。
   
   
二、FreeBSD在安装完毕后你都会做那些初始化?
      1、rc.conf
  1. sshd_enable="yes"
  2. syslogd_enable="yes"
  3. syslogd_flags="-s -s"
  4. sendmail_enable="NONE"
复制代码
2、.cshrc
  1. setenv  PACKAGESITE ftp://ftp.jp.freebsd.org/pub/FreeBSD/ports/amd64/packages-9-stable/Latest/
复制代码
三、列举一些针对某项功能的优化参数。
  做natd服务器的部分常用sysctl.conf:
  1. net.inet.tcp.blackhole=2
  2.   net.inet.udp.blackhole=1

  3.   kern.ipc.somaxconn=8192
  4.   kern.ipc.maxsockets=204800
  5.   kern.ipc.shmmax=2147483648
  6.   kern.ipc.nmbclusters=262144

  7.   net.inet.tcp.msl=2000
  8.   net.inet.tcp.always_keepalive=1
  9.   net.inet.tcp.fast_finwait2_recycle=1
  10.   
  11.   #kern.maxfiles=204800
  12.   #kern.maxfilesperproc=200000
  13.   #kern.maxvnodes=200000
  14.   
  15. kern.timecounter.hardware=HPET
  16.   
  17.   net.inet.tcp.sendspace=16384
  18.   net.inet.tcp.recvspace=16384
  19.   net.inet.udp.recvspace=65535
  20.   net.inet.udp.maxdgram=57344
  21.   net.local.stream.sendspace=65535
  22.   
  23.   net.inet.tcp.drop_synfin=1
  24. #  net.inet.ip.portrange.randomized=0
  25.   
  26.   net.inet.tcp.keepidle=60000
  27.   
  28.   
  29.   net.inet.ip.redirect=0
  30.   net.inet.ip.sourceroute=0
  31.   net.inet.ip.accept_sourceroute=0
  32.   net.inet.icmp.maskrepl=0
  33.   net.inet.icmp.log_redirect=0
  34.   net.inet.icmp.drop_redirect=1
  35.   net.inet.tcp.icmp_may_rst=0
复制代码
四、基于第三个问题的服务器硬件配置是什么?(CPU、内存)
我用的目前大多数都是pc服务器,dmesg节选:
  1. CPU: Intel(R) Xeon(R) CPU           E5504  @ 2.00GHz (2000.11-MHz K8-class CPU)
  2. real memory  = 4299161600 (4100 MB)
  3. ahci0: AHCI v1.20 with 6 3Gbps ports, Port Multiplier not supported
  4. em0: <Intel(R) PRO/1000 Network Connection 7.2.3> port 0xcc00-0xcc1f mem 0xfbce0000-0xfbcfffff,0xfbcdc000-0xfbcdffff irq 16 at device 0.0 on pci5
  5. hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0
  6. Timecounter "HPET" frequency 14318180 Hz quality 950
  7. qpi0: <QPI system bus> on motherboard
  8. ada0: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
  9. ada0: Command Queueing enabled
  10. ada0: 476940MB (976773168 512 byte sectors: 16H 63S/T 16383C)
  11. ada1: <WDC WD5003ABYX-01WERA1 01.01S02> ATA-8 SATA 2.x device
  12. ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
  13. ada1: Command Queueing enabled
  14. ada1: 476940MB (976773168 512 byte sectors: 16H 63S/T 16383C)

复制代码

评分

参与人数 1可用积分 +6 收起 理由
gvim + 6 感谢分享

查看全部评分

论坛徽章:
0
20 [报告]
发表于 2012-10-26 15:36 |只看该作者
对于第一个问题来说,我一般选择编译内核一下,按网络上的教程稍改下参数。做点心理安慰,个人经验一般不会有问题。性能提升多少,不好说。
内存占用肯定会少些。
至于防火墙这样的东东,简单配置一下,封封端口。
其它的一般不会做,还是和楼上大虾的思路一样,应用优化比较多一些。因为那样出问题自己能控制得了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP