• 用 docker 装吧。

  • 这个性能需求感觉本身有问题啊

  • 需求 2:查询功能,需要系统能够在 5 分钟内能完成 5000 笔查询业务,同时 90% 的用户响应时间不超过 3s。最大并发是多少?

    这个需求按照你的设置 有问题吧。

  • 性能测试常见面试题 at 2019年12月03日

    所以最重要的是 性能需求的分析,根据分析,设定场景。

  • openstf 的手机占用流程 at 2018年02月24日

    你是怎么将项目导入的,能给一下具体流程吗?

  • openstf 的手机占用流程 at 2018年02月24日

    谢谢,你用的 mac 吗?

  • openstf 的手机占用流程 at 2018年02月24日

    想请教一下,想要改造 stf 的话,用什么 IDE 工具 对 stf 进行二次开发?

  • 数据库是启动了 表也建立好了

  • 你好,这是我的启动时,全部日志
    root@ubuntu:~# /data/stf-master/bin/stf local
    2018-02-11T08:15:04.083Z INF/util:procutil 10760 [] Forking "/data/stf-master/lib/cli migrate"
    2018-02-11T08:15:04.350Z INF/db 10766 [
    ] Connecting to 127.0.0.1:28015
    2018-02-11T08:15:04.374Z INF/db:setup 10766 [] Database "stf" already exists
    2018-02-11T08:15:04.384Z INF/db:setup 10766 [
    ] Table "users" already exists
    2018-02-11T08:15:04.384Z INF/db:setup 10766 [] Table "accessTokens" already exists
    2018-02-11T08:15:04.384Z INF/db:setup 10766 [
    ] Table "vncauth" already exists
    2018-02-11T08:15:04.384Z INF/db:setup 10766 [] Table "devices" already exists
    2018-02-11T08:15:04.384Z INF/db:setup 10766 [
    ] Table "logs" already exists
    2018-02-11T08:15:04.409Z INF/db:setup 10766 [] Index "users"."adbKeys" already exists
    2018-02-11T08:15:04.409Z INF/db:setup 10766 [
    ] Index "accessTokens"."email" already exists
    2018-02-11T08:15:04.409Z INF/db:setup 10766 [] Index "vncauth"."response" already exists
    2018-02-11T08:15:04.409Z INF/db:setup 10766 [
    ] Index "vncauth"."responsePerDevice" already exists
    2018-02-11T08:15:04.409Z INF/db:setup 10766 [] Index "devices"."owner" already exists
    2018-02-11T08:15:04.409Z INF/db:setup 10766 [
    ] Index "devices"."present" already exists
    2018-02-11T08:15:04.409Z INF/db:setup 10766 [] Waiting for index "users"."adbKeys"
    2018-02-11T08:15:04.411Z INF/db:setup 10766 [
    ] Waiting for index "accessTokens"."email"
    2018-02-11T08:15:04.411Z INF/db:setup 10766 [] Waiting for index "vncauth"."response"
    2018-02-11T08:15:04.411Z INF/db:setup 10766 [
    ] Waiting for index "vncauth"."responsePerDevice"
    2018-02-11T08:15:04.412Z INF/db:setup 10766 [] Waiting for index "devices"."owner"
    2018-02-11T08:15:04.412Z INF/db:setup 10766 [
    ] Waiting for index "devices"."present"
    2018-02-11T08:15:04.414Z INF/db:setup 10766 [] Index "devices"."providerChannel" already exists
    2018-02-11T08:15:04.414Z INF/db:setup 10766 [
    ] Index "users"."adbKeys" is ready
    2018-02-11T08:15:04.414Z INF/db:setup 10766 [] Waiting for index "devices"."providerChannel"
    2018-02-11T08:15:04.416Z INF/db:setup 10766 [
    ] Index "accessTokens"."email" is ready
    2018-02-11T08:15:04.416Z INF/db:setup 10766 [] Index "vncauth"."response" is ready
    2018-02-11T08:15:04.417Z INF/db:setup 10766 [
    ] Index "vncauth"."responsePerDevice" is ready
    2018-02-11T08:15:04.417Z INF/db:setup 10766 [] Index "devices"."owner" is ready
    2018-02-11T08:15:04.418Z INF/db:setup 10766 [
    ] Index "devices"."present" is ready
    2018-02-11T08:15:04.418Z INF/db:setup 10766 [] Index "devices"."providerChannel" is ready
    2018-02-11T08:15:04.424Z INF/util:procutil 10760 [
    ] Forking "/data/stf-master/lib/cli triproxy app001 --bind-pub tcp://127.0.0.1:7111 --bind-dealer tcp://127.0.0.1:7112 --bind-pull tcp://127.0.0.1:7113"
    2018-02-11T08:15:04.428Z INF/util:procutil 10760 [] Forking "/data/stf-master/lib/cli triproxy dev001 --bind-pub tcp://127.0.0.1:7114 --bind-dealer tcp://127.0.0.1:7115 --bind-pull tcp://127.0.0.1:7116"
    2018-02-11T08:15:04.434Z INF/util:procutil 10760 [
    ] Forking "/data/stf-master/lib/cli processor proc001 --connect-app-dealer tcp://127.0.0.1:7112 --connect-dev-dealer tcp://127.0.0.1:7115"
    2018-02-11T08:15:04.438Z INF/util:procutil 10760 [] Forking "/data/stf-master/lib/cli processor proc002 --connect-app-dealer tcp://127.0.0.1:7112 --connect-dev-dealer tcp://127.0.0.1:7115"
    2018-02-11T08:15:04.442Z INF/util:procutil 10760 [
    ] Forking "/data/stf-master/lib/cli reaper reaper001 --connect-push tcp://127.0.0.1:7116 --connect-sub tcp://127.0.0.1:7111"
    2018-02-11T08:15:04.453Z INF/util:procutil 10760 [] Forking "/data/stf-master/lib/cli provider --name ubuntu --min-port 7400 --max-port 7700 --connect-sub tcp://127.0.0.1:7114 --connect-push tcp://127.0.0.1:7116 --group-timeout 900 --public-ip localhost --storage-url http://localhost:7100/ --adb-host 127.0.0.1 --adb-port 5037 --vnc-initial-size 600x800 --mute-master never"
    2018-02-11T08:15:04.491Z INF/util:procutil 10760 [
    ] Forking "/data/stf-master/lib/cli auth-mock --port 7120 --secret kute kittykat --app-url http://localhost:7100/"
    2018-02-11T08:15:04.527Z INF/util:procutil 10760 [] Forking "/data/stf-master/lib/cli app --port 7105 --secret kute kittykat --auth-url http://localhost:7100/auth/mock/ --websocket-url http://localhost:7110/"
    2018-02-11T08:15:04.536Z INF/util:procutil 10760 [
    ] Forking "/data/stf-master/lib/cli api --port 7106 --secret kute kittykat --connect-push tcp://127.0.0.1:7113 --connect-sub tcp://127.0.0.1:7111"
    2018-02-11T08:15:04.578Z INF/util:procutil 10760 [] Forking "/data/stf-master/lib/cli websocket --port 7110 --secret kute kittykat --storage-url http://localhost:7100/ --connect-sub tcp://127.0.0.1:7111 --connect-push tcp://127.0.0.1:7113"
    2018-02-11T08:15:04.595Z INF/util:procutil 10760 [
    ] Forking "/data/stf-master/lib/cli storage-temp --port 7102"
    2018-02-11T08:15:04.610Z INF/util:procutil 10760 [] Forking "/data/stf-master/lib/cli storage-plugin-image --port 7103 --storage-url http://localhost:7100/"
    2018-02-11T08:15:04.623Z INF/util:procutil 10760 [
    ] Forking "/data/stf-master/lib/cli storage-plugin-apk --port 7104 --storage-url http://localhost:7100/"
    2018-02-11T08:15:04.643Z INF/util:procutil 10760 [] Forking "/data/stf-master/lib/cli poorxy --port 7100 --app-url http://localhost:7105/ --auth-url http://localhost:7120/ --api-url http://localhost:7106/ --websocket-url http://localhost:7110/ --storage-url http://localhost:7102/ --storage-plugin-image-url http://localhost:7103/ --storage-plugin-apk-url http://localhost:7104/"
    2018-02-11T08:15:04.836Z INF/triproxy 10772 [app001] PUB socket bound on tcp://127.0.0.1:7111
    2018-02-11T08:15:04.852Z INF/triproxy 10772 [app001] DEALER socket bound on tcp://127.0.0.1:7112
    2018-02-11T08:15:04.857Z INF/triproxy 10772 [app001] PULL socket bound on tcp://127.0.0.1:7113
    2018-02-11T08:15:05.426Z INF/triproxy 10778 [dev001] PUB socket bound on tcp://127.0.0.1:7114
    2018-02-11T08:15:05.444Z INF/triproxy 10778 [dev001] DEALER socket bound on tcp://127.0.0.1:7115
    2018-02-11T08:15:05.451Z INF/triproxy 10778 [dev001] PULL socket bound on tcp://127.0.0.1:7116
    2018-02-11T08:15:05.653Z INF/db 10790 [
    ] Connecting to 127.0.0.1:28015
    2018-02-11T08:15:05.739Z INF/processor 10790 [proc002] App dealer connected to "tcp://127.0.0.1:7112"
    2018-02-11T08:15:05.747Z INF/processor 10790 [proc002] Device dealer connected to "tcp://127.0.0.1:7115"
    2018-02-11T08:15:05.990Z INF/poorxy 10845 [] Listening on port 7100
    2018-02-11T08:15:08.297Z INF/db 10784 [
    ] Connecting to 127.0.0.1:28015
    2018-02-11T08:15:08.322Z INF/reaper 10791 [reaper001] Subscribing to permanent channel "ALL"
    2018-02-11T08:15:08.325Z INF/reaper 10791 [reaper001] Reaping devices with no heartbeat
    2018-02-11T08:15:08.335Z INF/provider 10797 [
    ] Subscribing to permanent channel "ynY8IgvbRT6sruCb25T36A=="
    2018-02-11T08:15:08.337Z INF/db 10791 [reaper001] Connecting to 127.0.0.1:28015
    2018-02-11T08:15:08.341Z INF/processor 10784 [proc001] App dealer connected to "tcp://127.0.0.1:7112"
    2018-02-11T08:15:08.342Z INF/processor 10784 [proc001] Device dealer connected to "tcp://127.0.0.1:7115"
    2018-02-11T08:15:08.351Z INF/reaper 10791 [reaper001] Receiving input from "tcp://127.0.0.1:7111"
    2018-02-11T08:15:08.352Z INF/reaper 10791 [reaper001] Sending output to "tcp://127.0.0.1:7116"
    2018-02-11T08:15:08.358Z INF/provider 10797 [] Sending output to "tcp://127.0.0.1:7116"
    2018-02-11T08:15:08.359Z INF/provider 10797 [
    ] Receiving input from "tcp://127.0.0.1:7114"
    2018-02-11T08:15:08.382Z INF/provider 10797 [] Tracking devices
    Server running at http://127.0.0.1:8888/
    2018-02-11T08:15:08.523Z INF/storage:plugins:image 10833 [
    ] Listening on port 7103
    /data/stf-master/lib/cli api

    Options:
    -h, --help Show help. [boolean]
    -V, --version Show version. [boolean]
    --connect-push, -c App-side ZeroMQ PULL endpoint to connect to.
    [array] [required]
    --connect-sub, -u App-side ZeroMQ PUB endpoint to connect to.
    [array] [required]
    --port, -p The port to bind to. [number] [default: 7106]
    --secret, -s The secret to use for auth JSON Web Tokens. Anyone who
    knows this token can freely enter the system if they want,
    so keep it safe. [string] [required]
    --ssid, -i The name of the session ID cookie.
    [string] [default: "ssid"]

    Each option can be be overwritten with an environment variable by converting the
    option to uppercase, replacing dashes with underscores and prefixing it with
    STF_API_ (e.g. STF_API_PORT).

    mocker.formats is not a function
    1
    2018-02-11T08:15:08.540Z FTL/cli:local 10760 [] Child process had an error ExitError: Exit code "1"
    at ChildProcess. (/data/stf-master/lib/util/procutil.js:50:25)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:191:7)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:219:12)
    2018-02-11T08:15:08.540Z INF/cli:local 10760 [
    ] Shutting down all child processes
    2018-02-11T08:15:08.549Z INF/util:lifecycle 10772 [app001] Winding down for graceful exit
    2018-02-11T08:15:08.549Z INF/util:lifecycle 10778 [dev001] Winding down for graceful exit
    2018-02-11T08:15:08.551Z INF/util:lifecycle 10797 [*] Winding down for graceful exit
    2018-02-11T08:15:08.552Z INF/util:lifecycle 10784 [proc001] Winding down for graceful exit
    2018-02-11T08:15:08.552Z INF/util:lifecycle 10791 [reaper001] Winding down for graceful exit
    2018-02-11T08:15:08.555Z WRN/db 10791 [reaper001] Connection closed
    2018-02-11T08:15:08.552Z INF/util:lifecycle 10790 [proc002] Winding down for graceful exit
    2018-02-11T08:15:08.561Z WRN/db 10790 [proc002] Connection closed
    2018-02-11T08:15:08.561Z WRN/db 10784 [proc001] Connection closed