SSL 문제: 영역을 할당할 수 없습니다.
4872 단어 thin
묘사
로컬 호스트에서 서버를 시작할 때bundle exec thin start --ssl
서버에서 요청을 처리할 수 없어 내부 서버 오류가 발생했습니다.Using rack adapter
Thin web server (v1.6.4 codename Gob Bluth)
Maximum connections set to 1024
Listening on 0.0.0.0:3000, CTRL+C to stop
ruby(31701,0x7fff76fae000) malloc: *** mach_vm_map(size=3458764513820545024) failed (error code=3)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
ruby(31701,0x7fff76fae000) malloc: *** mach_vm_map(size=3458764513820545024) failed (error code=3)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
Unexpected error while processing request: failed to allocate memory
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/eventmachine-1.0.8/lib/em/connection.rb:488:in `get_peer_cert'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/eventmachine-1.0.8/lib/em/connection.rb:488:in `get_peer_cert'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/lib/thin/connection.rb:75:in `pre_process'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/lib/thin/connection.rb:53:in `process'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/lib/thin/connection.rb:39:in `receive_data'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/eventmachine-1.0.8/lib/eventmachine.rb:193:in `run_machine'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/eventmachine-1.0.8/lib/eventmachine.rb:193:in `run'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/lib/thin/backends/base.rb:73:in `start'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/lib/thin/server.rb:162:in `start'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/lib/thin/controllers/controller.rb:87:in `start'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/lib/thin/runner.rb:200:in `run_command'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/lib/thin/runner.rb:156:in `run!'
/Users/sergey/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/thin-1.6.4/bin/thin:6:in `<top (required)>'
/Users/sergey/.rbenv/versions/2.2.3/bin/thin:23:in `load'
/Users/sergey/.rbenv/versions/2.2.3/bin/thin:23:in `<main>'
토론 #1
메모리가 부족합니다.나는 기억이 진정한 문제가 아니라고 생각한다.이것은 데스크톱 환경에서 실행되며, 남은 사용 가능한 메모리는 약 2GB이다.토론 #2
오류 메시지토론 #셋
에 따라 루비는 대량의 메모리를 분배해야 한다.그렇게 지도 모른다, 아마, 아마...mach_vm_map(size=3458764513820545024)
전체 어플리케이션에 306개의 LOC이거 너무 이상해.아마도 당신의 현지 인증서 체인은 매우 큽니까?그렇다고 그렇게 많은 메모리를 분배할 수는 없다.
Ruby GC w/env 변수를 조정할 수 있습니까?
토론 #4
El Capitan토론 #5
이후 Qadricore i7 macboopro의 문제는 El Capitan의 이벤트machine과 SSL과 같다.다음과 같은 방법으로 재구성합니다.+----------------------+-------+-------+---------+---------+-----+-------+
| Name | Lines | LOC | Classes | Methods | M/C | LOC/M |
+----------------------+-------+-------+---------+---------+-----+-------+
| Controllers | 268 | 210 | 8 | 28 | 3 | 5 |
| Helpers | 8 | 8 | 0 | 0 | 0 | 0 |
| Models | 69 | 51 | 3 | 7 | 2 | 5 |
| Mailers | 0 | 0 | 0 | 0 | 0 | 0 |
| Javascripts | 61 | 37 | 0 | 5 | 0 | 5 |
| Libraries | 0 | 0 | 0 | 0 | 0 | 0 |
| Model tests | 14 | 6 | 2 | 0 | 0 | 0 |
+----------------------+-------+-------+---------+---------+-----+-------+
| Total | 420 | 312 | 13 | 40 | 3 | 5 |
+----------------------+-------+-------+---------+---------+-----+-------+
Code LOC: 306 Test LOC: 6 Code to Test Ratio: 1:0.0
(Brew 가정 - 기존 버전의 OpenSSL 경로를 조정합니다.)근본적인 원인이 무엇이든
토론 #6
이 문제는 네가 옳지만, 이 변통 방법은 나의 두 대의 맥 컴퓨터에서 그것을 해결하지 못했다.토론 #7
아마도'bundle exec'를 사용해 볼 수 있을 것이다. (만약 당신이 bundler를 사용하고 있지 않다면) 처음에 내 경로에 오래된 버전이 있었다.아니면 RVM과의 이상한 소통?토론 #8
이거 해봤어요.고맙습니다.최근의 맥북 에어에서 나는 단지 같은 문제를 한 번 만난 적이 있다.
그것들은 모두 같은 El Capitan Usb 부팅 장치, 같은 brew 설치 패키지, 같은 rails,gem, 프로젝트 버전으로 처음부터 다시 설치한 것이다.
이 문제는 하드웨어와 관련이 있는 것 같습니다
토론 #9
@x3b3ch3 이 문제를 해결한 적이 있습니까?나도 같은 문제가 있다.@spikex 솔루션을 시도했지만 성공하지 못했습니다.잘못된 루비로 보석을 다시 박는 것을 막기 위해토론 #10
까지 시도해 봤다.Reference
이 문제에 관하여(SSL 문제: 영역을 할당할 수 없습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://github.com/macournoyer/thin/issues/289텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)