小编Mav*_*ick的帖子

Bad Django/uwsgi表现

我正在使用nginx和uwsgi运行django应用程序.这是我如何运行uwsgi:

sudo uwsgi -b 25000 --chdir=/www/python/apps/pyapp --module=wsgi:application --env DJANGO_SETTINGS_MODULE=settings --socket=/tmp/pyapp.socket --cheaper=8 --processes=16  --harakiri=10  --max-requests=5000  --vacuum --master --pidfile=/tmp/pyapp-master.pid --uid=220 --gid=499
Run Code Online (Sandbox Code Playgroud)

&nginx配置:

server {
    listen 80;
    server_name test.com

    root /www/python/apps/pyapp/;

    access_log /var/log/nginx/test.com.access.log;
    error_log /var/log/nginx/test.com.error.log;

    # https://docs.djangoproject.com/en/dev/howto/static-files/#serving-static-files-in-production
    location /static/ {
        alias /www/python/apps/pyapp/static/;
        expires 30d;
    }

    location /media/ {
        alias /www/python/apps/pyapp/media/;
        expires 30d;
    }

    location / {
        uwsgi_pass unix:///tmp/pyapp.socket;
        include uwsgi_params;
        proxy_read_timeout 120;
    }

    # what to serve if upstream is not available or crashes
    #error_page 500 502 503 504 /media/50x.html;
}
Run Code Online (Sandbox Code Playgroud)

这就是问题所在.在服务器上执行"ab"(ApacheBenchmark)时,我得到以下结果:

nginx版本:nginx版本:nginx/1.2.6 …

python django uwsgi django-rest-framework

49
推荐指数
2
解决办法
3万
查看次数

主屏幕小部件,listView显示"正在加载"

首先,图像说千言万语:

在此输入图像描述

虽然getViewAt被称为4项,但是我的光标大小是这样的.

这是代码:

public class WidgetService extends RemoteViewsService {
    @Override
    public RemoteViewsFactory onGetViewFactory(Intent intent) {
        System.out.println("Factory");
        return(new WidgetViewsFactory(this.getApplicationContext(), intent));
    }
}
Run Code Online (Sandbox Code Playgroud)

小部件提供者:

public class WidgetViewsFactory implements RemoteViewsService.RemoteViewsFactory, LNTConstants
{   
    private Context context = null;

    ArrayList<DBItemModel> items;

    public WidgetViewsFactory(Context context, Intent intent) {
        this.context = context;

        Cursor c = Items.get(context, where);
        items = Items.getFromCursor(c);
    }

    @Override
    public void onCreate() {
        /*

        */
    }

    @Override
    public void onDestroy() {

    }

    @Override
    public int getCount() {
        if(items != null) {
            System.out.println("Count: " + …
Run Code Online (Sandbox Code Playgroud)

android homescreen android-widget

13
推荐指数
3
解决办法
4879
查看次数

Django Rest Framework/Django性能问题

我目前正在我的EC2小型实例服务器上部署Django w/Django-Rest-Framework,为几个Android应用程序提供一组API.

问题是我遇到了一个严重的性能问题,我不得不介绍一下.我发现单个请求的大部分时间都花在了DRF的核心内部.

很抱歉让这篇文章很长,但我想我必须展示一切,这样我才能得到正确的答案.让我继续吧:

我的设置是nginx/uwsgi.以下是我使用upstart运行uwsgi的方法:

description "pycms"
start on [2345]
stop on [06]

respawn

# start from virtualenv path
chdir /www/python/apps/pycms/

exec uwsgi -b 25000 --chdir=/www/python/apps/pycms --module=wsgi:application --env DJANGO_SETTINGS_MODULE=settings --socket=127.0.0.1:8081 --processes=5  --harakiri=20  --max-requests=5000  --vacuum --master --pidfile=/tmp/pycms-master.pid 
Run Code Online (Sandbox Code Playgroud)

假设我请求以下API:

http://IP_ADDRESS/api/nodes/mostviewed/9/
Run Code Online (Sandbox Code Playgroud)

符合以下规则:

url(r'^nodes/mostviewed/(?P<category>\d+)/$', MostViewedNodesList.as_view(), name='mostviewed-nodes-list'),
Run Code Online (Sandbox Code Playgroud)

这是基于类的视图:

class MostViewedNodesList(generics.ListAPIView):
    """
    API endpoint that lists featured nodes
    """
    model = ObjectStats
    serializer_class = NodeSerializer
    permission_classes = (permissions.AllowAny,)

    def get_queryset(self):
        if(self.kwargs.has_key('category')):
            category_id = self.kwargs.get('category')
            return ObjectStats.get_most_viewed(category_id)
        else:
            return []
Run Code Online (Sandbox Code Playgroud)

序列化程序类:

class NodeSerializer(serializers.ModelSerializer):
    images = ImageSerializer()
    favorite …
Run Code Online (Sandbox Code Playgroud)

python django profiling mysql-python django-rest-framework

6
推荐指数
1
解决办法
4648
查看次数

Android-TTS没有声音发出

我正在尝试为Android实现TTS应用程序。这是我到目前为止编写的代码:

import android.app.Activity;
import android.content.Intent;
import android.view.View.OnClickListener;
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import java.util.Locale;

public class AlarmActivity extends Activity implements OnClickListener, TextToSpeech.OnInitListener {

    private TextToSpeech mTts;
    private static final String TAG = "TextToSpeechDemo";
    private static final int MY_DATA_CHECK_CODE = 1234;
    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        setContentView(R.layout.alarm);

        Button btnAdd = (Button) findViewById(R.id.btnAdd);
        btnAdd.setOnClickListener(this);
        btnAdd.setEnabled(false);

        TextView txt = (TextView) findViewById(R.id.txt);
        txt.setText("OnCreate");

        // Fire off an intent to check if a TTS engine is …
Run Code Online (Sandbox Code Playgroud)

android text-to-speech

4
推荐指数
1
解决办法
7560
查看次数