top 명령어에서 cpu system 사용률에 대해.

yoyosul의 이미지

스샷처럼, cpu sy 부분이 보통이 저정도입니다. 그렇다고 하여 방문자가 많은것은 아닙니다.(구글 봇이 많이 들어오더라구요;)

cpu system 사용률이 올라가는것은 php,sql(my)의 사용이 많다는걸 뜻하는건지요?

현재 사이트를 부득이하게 https 로 모두 운영하고 있습니다. 이부분도 영향이 큰지도 알고 싶습니다.
사이트 특성상 이미지들이 주를 이루고 있습니다.

김정균의 이미지

sys가 높다는 것은 그만큼 php나 mysql이 무겁게 동작을 한다는 것입니다. 즉 logic의 문제일 가능성이 높습니다. top process list가 약간 보이는 것들만 봐도 상당히 무겁게 동작하도록 만들어져 있는 것 같네요. 만약 logic을 개선할 수 없다면 caching을 시키는 것도 한 방법이겠죠. 예를 들어서 portal의 top page같은 것들을 실시간으로 dynamic하게 처리를 하려면 엄청난 resource가 필요하게 될 겁니다. 그래서 보통 이런 무거운 page들은 여러가지 caching 기법을 사용하게 됩니다.

예를 들어서 background로 분당 1번씩 index file을 static file로 generate한다든지, 또는 memcache, redis같은 것을 이용해서 caching을 한다든지, 아니면 정말 앞에 caching server를 둔다든지.. 등등 여러가지 기법이 있을 수 있습니다.

KLDP의 경우에는 forum list나 forum article들의 경우, 로그인을 하지 않았을 경우에는 memcache에 caching된 내용을 보여주게 되어 있습니다. 예전 Drupal로 처음 migration 했을 경우 DB 부하가 엄청났었는데, memcache를 도입하고 시스템이 많이 널널해 졌죠.

yoyosul의 이미지

캐싱관련해서 현재,캐시서버를 앞단에 두려고 하고 있습니다.

헌데,혹 sys 에서 처리중인 php,sql 이 어떤파일에서 문제를 일으키는지(무겁다는) 또는 어떤경로(url)에서 발생하는지 알수는 없을까요??

김정균의 이미지

보통 sys는 kernel system call이 많이 호출이 될 경우 올라가고, user는 user land call이 호출이 될때 올라갑니다. I/O 작업이 많거나 cpu 연산이 많을 경우 올라간다는 의미이죠. SSL도 sys를 올리는 이유중에 하나이지만 접속이 얼마나 많은지는 모르겠지만 일반적으로는 SSL이 서버 부하를 유발 시킬 정도라고 보지는 않습니다. (물론 아니라고 할 수도 없습니다만 확인시에 우선 순위에서는 밀린다는 얘기입니다.)

웹의 경로는 알 수 없으니 어떤 문제가 있는지는 top만 보고선 알 수는 없습니다. 이럴 경우는 php profiling 에 대해서 검색을 해 보시면 어디서 문제가 되는지에 대한 접근이 가능 합니다.

다만, profiling은 서버에 부하를 많이 주기 때문에 sampling을 잘 하셔야 할 겁니다.

nomail의 이미지

질문자는 아닙니다만 답글 내용이 저한테도 무척 도움이 되었습니다.
초보 운영자인데 혼자 삽질하며 고군분투 할려니 참 힘드네요. 알려주신 memcache나 redis를 저도 적용해봐야 겠습니다^^

yoyosul의 이미지

답글 감사드립니다.

현재 서버는 https 를 모든 url 에 사용하고 있습니다.(회원가입폼만이 아닌 사이트 전체를..)

혹 httpd.conf 에서 모듈설정이나 ssl 설정이 잘못된건 아닐지...

// 현재 httpd.conf 값입니다..//

LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbd_module modules/mod_authn_dbd.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule dbd_module modules/mod_dbd.so
LoadModule dumpio_module modules/mod_dumpio.so
LoadModule reqtimeout_module modules/mod_reqtimeout.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule include_module modules/mod_include.so
LoadModule filter_module modules/mod_filter.so
LoadModule substitute_module modules/mod_substitute.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule log_forensic_module modules/mod_log_forensic.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule cern_meta_module modules/mod_cern_meta.so
LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
LoadModule ident_module modules/mod_ident.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule unique_id_module modules/mod_unique_id.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule version_module modules/mod_version.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule asis_module modules/mod_asis.so
LoadModule info_module modules/mod_info.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule imagemap_module modules/mod_imagemap.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule redurl_module      modules/mod_url.so
LoadModule php5_module        modules/libphp5.so
LoadModule ssl_module modules/mod_ssl.so
 
<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>
 
<Directory "/usr/local/apache/htdocs">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # <a href="http://httpd.apache.org/docs/2.2/mod/core.html#options
" rel="nofollow">http://httpd.apache.org/docs/2.2/mod/core.html#options
</a>    # for more information.
    #
    #Options Indexes FollowSymLinks
    Options FollowSymLinks
    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None
 
    #
    # Controls who can get stuff from this server.
    #
    Order allow,deny
    Allow from all
 
</Directory>
 
LogLevel warn
 
<IfModule log_config_module>
    #
    # The following directives define some format nicknames for use with
    # a CustomLog directive (see below).
    #
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %T" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
 
    <IfModule logio_module>
      # You need to enable mod_logio.c to use %I and %O
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>
 
    #
    # The location and format of the access logfile (Common Logfile Format).
    # If you do not define any access logfiles within a <VirtualHost>
    # container, they will be logged here.  Contrariwise, if you *do*
    # define per-<VirtualHost> access logfiles, transactions will be
    # logged therein and *not* in this file.
    #
#    CustomLog "logs/access_log" common
 
    #
    # If you prefer a logfile with access, agent, and referer information
    # (Combined Logfile Format) you can use the following directive.
    #
    #CustomLog "logs/access_log" combined
</IfModule>
 
# Various default settings
#Include conf/extra/httpd-default.conf
 
# Secure (SSL/TLS) connections
Include conf/extra/httpd-ssl.conf
#
# Note: The following must must be present to support
#       starting without SSL on platforms with no /dev/random equivalent
#       but a statically compiled-in mod_ssl.
#
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
 
<Directory "/home/*">
    AllowOverride All
    Options +ExecCGI
    Order allow,deny
    Allow from all
</Directory>
 
#
# Directives to allow use of AWStats as a CGI
#
Alias /awstatsclasses "/usr/local/src/awstats/wwwroot/classes/"
Alias /awstatscss "/usr/local/src/awstats/wwwroot/css/"
Alias /awstatsicons "/usr/local/src/awstats/wwwroot/icon/"
ScriptAlias /awstats/ "/usr/local/src/awstats/wwwroot/cgi-bin/"
 
#
# This is to permit URL access to scripts/files in AWStats directory.
#
<Directory "/usr/local/src/awstats/wwwroot">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.