1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/alchemists-ziply

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Ziply

Zip как Bitly/TinyURL/...

ShortEner

Мой сервис сокращения URL.

Установка

Нужен Elixir >= 1.9

Для установки локальной среды разработки следуйте инструкции на сайте The Elixir programming language:

https://elixir-lang.org/install.html

Убедитесь, что ваша локальная среда настроена правильно:

$ elixir -v

Если всё в порядке, вы увидите следующее:

Erlang/OTP 22 [erts-10.5.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe] [dtrace]

Elixir 1.9.1 (compiled with Erlang/OTP 22)

Теперь выполните следующие шаги:

  1. Скачайте проект с помощью команды:
git clone  https://gitee.com/alchemists/ziply.git
  1. Создайте папку для базы данных:
mkdir priv
  1. Теперь структура вашего проекта будет выглядеть так:
path/2/u/path:
    +- priv/
    +- ziply/
        +- short_ener
        +- LICENSE
        +- README.md
  1. Перейдите в папку приложения:
cd ziply/short_ener
  1. Запустите приложение:
mix deps.get && mix deps.compile
  1. Загрузите и скомпилируйте все зависимые модули:
mix run --no-halt
  1. Приложение должно запуститься. В терминале вы должны увидеть следующее сообщение:

    Compiling 11 files (.ex) Generated short_ener app

    15:10:06.079 [debug] will init. in /opt/scm/srv/sp4ias/main_ziply/short_ener/../../priv/mnesia.dev.nonode@nohost

    ...

Приложение готово к работе.

Использование

На данный момент поддерживается только 3 базовые функции:

Проверка работоспособности

Выполните команду:

curl localhost:9081/ping

В ответ вы получите:

pong ;-)
I'm alive.

Генерация короткого URL

Отправьте запрос POST на сервер:

curl localhost:9081/api -X POST -d 'url=https://qq.com/'

При отправке нового URL вы получите следующий ответ:

Ziply: t.101.s/qogl ~> https://qq.com/

При попытке сократить уже существующий URL вы получите такой ответ:

Ziped: t.101.s/qogl ~> https://qq.com/

Перенаправление

Перейдите по ссылке в браузере:

-> http://t.101.s/qogl

Развёртывание

Рекомендуется использовать команду mix release:

  1. Перейдите в клонированный каталог проекта:
cd path/2/u/ziply/short_ener
  1. Инициализируйте релиз:
mix release.init
  1. Скомпилируйте приложение как продукт:
MIX_ENV=prod mix release --overwrite

Успешная компиляция создаст файл _build/prod/rel/short_ener.bin/short_ener, который можно запустить для запуска сервера. Система с IEx

  • daemon — запускает систему как демон.
  • daemon_iex — запускает систему как демона с подключённым IEx.
  • eval «EXPR» — выполняет заданное выражение в новой, не загруженной системе.
  • rpc «EXPR» — удалённо выполняет заданное выражение в работающей системе.
  • remote — подключается к работающей системе через удалённый терминал.
  • restart — перезапускает работающую систему удалённой командой.
  • stop — останавливает работающую систему удалённой командой.
  • pid — выводит PID операционной системы работающей системы удалённой командой.
  • version — выводит имя релиза и версию для загрузки.

План и трассировка

Dev:

  • POST API;
  • GET API:
    • /;
    • /ping;
    • /ziplty: 302 перенаправление;
    • подсчёт посещений.
  • SSL.

Ops:

  • публичный адрес t.101.so;
  • тестовый случай;
  • развёртывание по HTTPS;
  • аутентификация/административный API;
  • Mnesia DBA:
    • резервное копирование;
    • миграция;
    • восстановление;
    • распределение.

Prod.:

  • TDD:
    • PropEr?;
  • документы:
  • использование curl ~ 3264b43;
  • README ~;
  • разработка истории;
  • видео использования.

Лицензия

На основе MIT.

Благодарности

— RIP/Джо Армстронг создал Erlang, благодаря чему Хосе Валим смог разработать Elixir.

Вклад

  1. Форк этого репозитория.
  2. Новая ветка Feat_xxx.
  3. Фиксация кода.
  4. Новый запрос на вытягивание.

Логирование

— 201019 zoomquiet перестроил README, основная ветка. — 201018 zoomquiet рефакторинг в Shortener. — 201017 zoomquiet прототип. — 201016 zoomquiet дизайн API. — 201014 zoomquiet инициализация.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

zip url как bitly/TinyURL/... Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/alchemists-ziply.git
git@api.gitlife.ru:oschina-mirror/alchemists-ziply.git
oschina-mirror
alchemists-ziply
alchemists-ziply
master