Наличие проблемы, отлаживая приложение Sinatra в производстве

Извините не знайте об учебном руководстве.

Ваш лучший выбор (по моему скромному мнению), состоит в том, чтобы использовать SSE через "внутреннюю" Intel функций, обеспечивает для обертывания (обычно) единственных инструкций SSE. Они сделаны доступными через ряд, включают файлы, названные *mmintrin.h, например, xmmintrin.h является исходной системой команд SSE.

Начинаются знакомый с контентом Оптимизации Intel , Справочник является хорошей идеей (см. раздел 4.3.1.2 для примера intrinsics), и разделы SIMD являются существенным чтением. Справочники системы команд довольно полезны также, в документации той каждой инструкции включает "внутреннюю" функцию, которой она соответствует.

Делают , проводят некоторое время, осматривая ассемблер, произведенный компилятором из intrinsics (Вы изучите много), и на профилировании/измерении производительности (Вы постараетесь не напрасно тратить время код луга SSE для небольшого возврата на усилии).

Обновление 31.05.2011: существует некоторое очень хорошее покрытие intrinsics и векторизации в Вуали Agner оптимизация PDFs ( спасибо ), хотя это немного распространено о (например, раздел 12 из сначала один и раздел 5 из 114-секундного ). Это не точно учебный материал (на самом деле существуют "эти, руководства не являются для новичков" предупреждением), но они действительно справедливо рассматривают SIMD (используемый ли через asm, intrinsics или векторизацию компилятора) как всего одна часть большей панели инструментов оптимизации.

Обновление 04.10.2012: А миленькая Статья в журнале Linux на gcc векторе intrinsics заслуживает упоминания здесь. Более общий, чем просто SSE (покрывает PPC и расширения ARM также). Существует хороший набор ссылок на последняя страница , которая привлекла мое внимание к Intel "intrinsics руководство" .

11
задан Zeke 27 October 2009 в 20:23
поделиться

3 ответа

Я бы попытался использовать промежуточное ПО Rack :: ShowExceptions, чтобы попытаться отследить проблему. В вашем config.ru добавьте эти две строки перед вызовом run:

require 'rubygems'
require 'your-app'

use Rack::ShowExceptions

run YourApp

Это должно улавливать и отображать обратную трассировку для любых исключений, возникающих в Rack или в вашем приложении. Это должно дать вам больше деталей для работы, по крайней мере, на это будет надежда.

6
ответ дан 3 December 2019 в 11:04
поделиться

Может быть, что-то не так с настройкой вашего журнала?

Перенаправить STDERR при запуске сервера Sinatra, чтобы вы могли его прочитать. Например:

ruby myapp.rb -p 1234 > log/app.log 2>&1
1
ответ дан 3 December 2019 в 11:04
поделиться

Спасибо за ответы, но мне не пришлось их использовать. Первоначально я развертывал приложение в конфигурации под-URI . Когда я вместо этого развернул приложение на его собственном поддомене, проблемы исчезли.

Итак ... Я не совсем уверен, в чем была проблема, но избавление от этой строки - вот что решило мою конфигурацию Apache для сайта. :

Redirect permanent / https://www.example.org/admin/member_photos/
0
ответ дан 3 December 2019 в 11:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: