По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Веб-разработчики являются неотъемлемой частью эпохи Интернета. Веб-сайты и мобильные страницы, с которых мы получаем большую часть нашей информации, совершаем покупки, бронируем билеты и так далее, созданы и управляются веб-разработчиками. Веб-разработчики - это люди, которые проектируют и разрабатывают веб-сайты и мобильные приложения. Они используют несколько языков программирования для реализации необходимых функций. Веб-приложение или мобильное приложение имеют множество различных компонентов, которые взаимодействуют друг с другом для создания всей функциональности системы. Из-за этого сложного характера веб-разработчиков можно разделить на Front-End, Back-End и Full-stack разработчиком. Как стать веб-разработчиком Front-End веб-разработчики также известны как разработчики на стороне клиента. Они работают над внешним видом и ощущением веб-приложения. Вы, наверное, не раз слышали эти модные аббревиатуры UX и UI, которые как раз обозначают User Experience (пользовательский опыт) и User Interface (пользовательский интерфейс), за которые ответственен фронтенд разработчик. Back-End разработчики используют языки программирования и реляционные базы данных для интеграции внешнего интерфейса с внутренним. Со временем наборы умений фронт-энда и бэк-энда разработчиков пересекались, и в настоящее время индустрия предпочитает разработчиков с мастерством в обоих. Такие эксперты называются Full Stack Developers, и они обладают навыками как Front-End, так и Back-End разработки. Давайте рассмотрим навыки, необходимые для того, чтобы стать веб-разработчиком. 1. Графика или пользовательский интерфейс (UI) Знание графики или пользовательского интерфейса имеет большое значение для понимания эстетического аспекта веб-дизайна. Это позволяет выявлять и устранять проблемы совместимости между веб-браузерами при отображении страниц. 2. HTML, CSS, JavaScript Это строительные блоки веб-разработки. Они позволяют разработчику создавать структуру, стиль и содержание веб-сайта. Дополнительное знание сторонних библиотек, таких как jQuery, LESS, Angular и React JS, крайне желательно. HTML определяет структуру представления страниц. CSS обеспечивает контроль над макетом, позволяя создавать точные секционные модули, а также позволяет разработчикам настраивать макет страницы, цвета, шрифты и добавлять эффекты анимации. JavaScript является продвинутым по своей природе, что помогает сделать веб-страницу более интерактивной. Он предлагает изысканные функции, которые помогают сделать веб-страницы более отзывчивыми. Зная DOM, JSON позволяет вам манипулировать Javascript кодом. 3. CMS Система управления контентом (Content Management Systems) - это приложение, которое позволяет пользователям эффективно публиковать и управлять контентом веб-сайта. Это интуитивно понятный пользовательский интерфейс, который помогает в создании и изменении содержимого веб-страницы. Несмотря на то, что здесь не требуется опыта в программировании бэкэнда, знание HTML и CSS необходимо. В зависимости от используемой CMS вы можете реализовать расширенные функции, установив плагины и расширения. Wordpress, Joomla, Drupal, Magento, Laravel, Typo3, Serendipity, Chamilo - вот некоторые из них, которые стоит добавить в вашу базу знаний. 4. UX Пользовательский опыт не имеет прямого отношения к знаниям о дизайне; напротив, это относится к аналитическому и техническому пониманию того, как должно работать веб-приложение. Это понимание факторов, которые удерживают пользователей на сайте, помогают им найти то, что они ищут, и оптимизируют поддерживаемые функции. 5. Языки программирования Языки программирования помогают внедрять интерактивные функции на сайт. Они несут ответственность за возможность хранить, обновлять, манипулировать и получать доступ к данным из базы данных в пользовательский интерфейс. Для веб-разработки основными языками программирования, с которыми нужно ознакомиться, являются Java, Javascript, .NET, PHP, Perl, Python, C, C ++ и Ruby. Выбор языка программирования в основном зависит от программного стека и типа разрабатываемого проекта. Про выбор языка программирования можно прочитать в нашей статье. 6. СУБД Веб-приложения должны хранить данные, с возможностью для доступа к ним, и когда это необходимо, что требует хорошего знания системы управления реляционными базами данных. Веб-разработчик должен хорошо понимать его синтаксис для создания, обновления, манипулирования и доступа к базе данных до ее оптимального уровня. Он должен понимать разницу между реляционной и нереляционной базой данных наряду со знанием XML/JSON. Понимание особенностей реляционной базы данных, веб-хранилища, знание NoSQL и связей с базами данных укрепляют карьеру веб-разработчика. 7. Программный стек Это совокупность программных подсистем, которые вместе работают вместе, чтобы создать платформу для поддержки приложения без необходимости в дополнительном программном обеспечении. Говорят, что приложение «работает поверх» определенного программного стека. Независимо от программного стека, всегда существует сходство в архитектуре программного стека. Примеры программных стеков для веб-разработки: LAMP [Linux | Apache | MySQL | PHP] MERN [MongoDB | Express | React | Node.js] MEAN [MongoDB | Express | Angular | Node.js] Понимание стека программного обеспечения требуется при работе над проектом, поскольку оно дает лучшее техническое представление о разрабатываемом программном обеспечении. Вы можете оптимизировать производительность, предлагать изменения и устранять технические проблемы. 8. SEO Поисковая оптимизация (Search Engine Optimization) не может считаться обязательным требованием для веб-разработчика. Но знания в этой области помогут вам с самого начала структурировать веб-сайт как оптимизированный для SEO. Это, в конечном счете, облегчит работу профессионалов SEO, но более того, веб-приложение имеет больше шансов на успех. Итог Наличие всех вышеперечисленных навыков дает вам возможность выбора из нескольких карьерных возможностей. На сегодняшнем рынке веб-разработчики должны иметь более одного определенного набора навыков.
img
SSH туннели один из самых часто используемых методов связи среди системных и сетевых администраторов. В данном руководстве расскажем о такой функции как переброс порта SSH. Это используется для безопасной передачи данных между двумя и более системами. Что такое переброс порта SSH? Коротко, переброс порта SSH даёт возможность создавать туннель между несколькими системами, а затем настроить эти системы так, чтобы трафик они гнали через этот туннель. Именно по такой логике работает VPN или SOCKS Proxy. Есть несколько разных методов переброса: переброс локального порта, переброс удалённого порта или динамический переброс. Для начала дадим пояснение каждому из них. Локальный переброс порта позволяет получать доступ ко внешним ресурсам из локальной сети и работать в удаленной системе, как если бы они находились в одной локальной сети. По такому принципу работает Remote Access VPN. Переброс удаленного порта дает возможность удалённой системе получать доступ к вашей локальной сети. Динамический переброс создает SOCKS прокси сервер. После этого настраиваем приложения так, чтобы они использовали это туннель для передачи данных. Чаще всего такой переброс используется для доступа к ресурсам, который по той или иной причине заблокированы для данной страны. Для чего нужен переброс порта SSH? Допустим у вас есть какое-то приложение, которые передаёт данные в открытом виде или через нешифрованный протокол. Ввиду того, что SSH создает шифрованное соединение, то вы с легкостью можете настроить программу так, чтобы трафик её шёл через этот туннель. Он так же часто используется для доступа к внутренним ресурсам извне. Приблизительно это напоминает Site-to-Site VPN, где нужно указывать какой именно трафик нужно заворачивать в туннель. Сколько сессий можно устанавливать? Теоретически, можно создавать столько сессий, сколько нам захочется. В сети используется 65 535 различных портов, и мы можем перебрасывать любой из этих портов. Но при перебросе порта нужно учитывать, что некоторые из них зарезервированы за конкретными сервисами. Например, HTTP использует 80 порт. Значит, переброс на порт 80 возможен только если нужно переадресовать веб трафик. Порт, который перебрасывается на локальном хосте может не совпадать с портом удаленной системы. Мы легко можем перебросить локальный порт 8080 на порт 80 на удаленной машине. Иными словами, если мы напишем IP адрес нашей машины и порт 8080, то запрос пойдет на 80 порт удалённой системы. Если вам не критично какой порт использовать на своем хосте, лучше выбрать что-то из диапазона 2000-10000, так как все порты ниже 2000 зарезервированы. Переброс локального порта Локальная пересылка представляет собой переброс порта из клиентской системы на сервер. Он позволяет настроить порт в системе таким образом, чтобы все соединения на этот порт проходили через туннель SSH. Для переадресации локального порта используется ключ L. Общий синтаксис команды таков: $ ssh -L local_port:remote_ip:remote_port user@hostname.com $ ssh -L 8080:www.example1.com:80 example2.com Данной командой мы говорим системе, что все запросы на 8080 порт example1.com переадресовывать на example2.com. Это часто используется когда нужно организовать доступ извне на внутренний ресурсы компании. Тестирование работы переадресованного порта Чтобы проверить, работает ли переадресация должным образом можно воспользоваться утилитой netcat. На машине, где была запущена команда переадресации нужно ввести команду netcat в следующем виде: $ nc -v remote_ip port_number Если переадресация работает и трафик проходит, то утилита вернёт "Успех!". В противном случае выдаст ошибку об истечении времени ожидания. Если что-то не работает, нужно убедиться, что подключение к удаленному порту по SSH работает корректно и запросы не блокируются межсетевым экраном. Создание постоянного туннеля (Autossh) Для создания туннеля, который будет активен постоянно используется так называемая утилита Autossh. Единственно требование это необходимость настройки между двумя системами аутентификацию по публичным ключам, чтобы не получать запросы на ввод пароля при каждом обрыве и восстановлении соединения. По умолчанию, Autossh не установлен. Чтобы установить эту утилиту введем команду ниже. $ sudo apt-get install autossh Синтаксис утилиты autossh почти похож на синтаксис ssh: $ autossh -L 80:example1.com:80 example2.com Переброс удалённого порта Переброс порта с удалённой машины используется в тех случаях, если нужно предоставить доступ на свой хост. Допусти у нас установлен веб сервер и нам нужно, чтобы друзья могли пользоваться им. Для этого нужно ввести команду показанную ниже: $ ssh -R 8080:localhost:80 geek@likegeeks.com А общий синтаксис команды выглядит так: $ ssh -R remote_port:local_ip:local_port user@hostname.com Динамическая переадресация портов Динамическая переадресация портов позволит ssh функционировать как прокси-сервер. Вместо переброса трафика на специфический порт, здесь трафик будет идти через на диапазон портов. Если вы когда-нибудь пользовались прокси сервером для посещения заблокированного сайта или просмотра контента, недоступного в вашем регионе, вероятнее всего вы пользовались SOCKS сервером. Динамическая переадресация также обеспечивает некоторую приватность. Она затрудняет логирование и анализ трафика, так как трафик проходит через промежуточный сервер. Для настройки динамической переадресации используется следующая команда: $ ssh -D local_port user@hostname.com Таким образом, если нужно весь трафик идущий на порт 1234 направить на SSH сервер, нужно ввести команду: $ ssh -D 1234 geek@likegeeks.com После установления соединения, мы можем указать в приложениях, например, браузере, пропускать трафик через туннель. Множественная переадресация Иногда приходится перебрасывать несколько внутренних портов на несколько внешних. Допустим у нас на одном и том же сервере крутятся и веб сервер и oracale. В таком случае мы можем указать несколько условий переадресации ставя перед каждым из них ключ L для локальной переадресации и R для внешней. $ ssh -L local_port_1:remote_ip:remote_port_1 -L local_port_2:remote_ip:remote_port2 user@hostname.com $ ssh -L 8080:192.168.1.1:80 -L 4430:192.168.1.1:1521 user@hostname.com $ ssh -R remote_port1:local_ip:local_port1 remote_port2:local_ip:local_port2 user@hostname.com Просмотр списка туннелей Чтобы просмотреть сколько SSH туннелей активны на данный момент можно прибегнуть к помощи команды lsof: $ lsof -i | egrep '<ssh>' Как видим, на нашей системе сейчас активно три подключения. Чтобы вместо имени хоста показать IP адрес к команде нужно добавить ключ n. $ lsof -i -n | egrep '<ssh>' Ограничение переадресации портов По умолчанию, переброс портов SSH активен для всех. Но если нужно ограничить переадресацию портов в целях безопасности, то нужно отредактировать файл sshd_config. $ sudo vi /etc/ssh/sshd_config Здесь есть несколько опций, позволяющих ограничивать создание SSH туннелей. PermitOpen позволяет прописать адреса, для которых можно включить переадресацию портов. Тут можно указать конкретный IP адреса или название хоста: PermitOpen host:port PermitOpen IPv4_addr:port PermitOpen [IPv6_addr]:port AllowTCPForwarding данная опция включает или отключает переадресацию портов для SSH. Так же можно указать какой тип переадресации допускается на этом хосте. AllowTCPForwarding yes #default setting AllowTCPForwarding no #prevent all SSH port forwarding AllowTCPForwarding local #allow only local SSH port forwarding AllowTCPForwarding remote #allow only remote SSH port forwarding Для подробной информации можно вызвать руководство по файлу sshd_config: $ man sshd_config Уменьшение задержки Проблема с переадресацией портов на SSH это возможность увеличения задержки. При работе с текстовой информацией э то не критично. Проблема даёт о себе знать если по сети идёт много трафика, а SSH сервер настрое как SOCKS сервер, то есть на нём настроена динамический переброс портов. Это происходит по той причине, что SSH туннели по сути это TCP туннель поверх TCP. Это не очень эффективный метод передачи данных. Для решения проблемы можно настроить VPN, но если по какой-то причине предпочитаете SSH туннели, то существует программа sshuttle, которая устраняет проблему. На Ubuntu или других дистрибутивах семейства Debian программу можно установить командой $ sudo apt-get install sshuttle Если же программы нет в репозиториях дистрибутива, то можно взять ее с GitHub: $ git clone https://github.com/sshuttle/sshuttle.git $ cd sshuttle $ ./setup.py install Настройка туннеля в sshuttle отличается от SSH. Чтобы завернуть весь трафик в туннель нужно ввести следующую команду: $ sudo sshuttle -r user@remote_ip -x remote_ip 0/0 vv Прервать соединение можно комбинацией клавиш Ctrl+C. Чтобы запустить sshuttle как демон, нужно добавить ключ D. Чтобы убедиться что туннель поднят и в глобальной сети показывается другой IP, в терминале можно ввести команду: $ curl ipinfo.io Или же просто открыть любой другой сайт, который покажет белый IP и местоположение.
img
Огромный и “кровавый" энтерпрайз врывается в нашу IT - базу знаний. Говорить будем о продукте (точнее продуктах) американской компании Genesys. Эти ребята делают ПО для контактных центров, так сказать, высшего разряда - банки, государство и крупнейшие предприятия. Хотя сам Genesys подчеркивает, что решение может помочь и малому бизнесу, но, честно говоря, автор статьи не на своем веку не встречал инсталляций Genesys в SMB сегменте (по крайней мере в России). /p> Genesys постоянно фигурирует в сводке компании Gartner, в 2018 году ребятам даже удалось стать лидером в “магическом квадранте". Давайте разбираться. Что умеет контакт - центр на базе Genesys? Вендор позиционирует свой продукт в четырех плоскостях. Разберемся по порядку. Улучшение клиентского сервиса Первая часть профита. Genesys обеспечит умную маршрутизацию на агентов (умнее чем даже модный prescission routing у Cisco), которая маршрутизирует на агентов не только на базе привычных скиллов или атрибутов, на и подключается искусственный интеллект и технологии машинного обучения. Клиент попадет именно на того агента, который сможет решить его вопрос. Так сказать, дата - дривен подход в маршрутизации клиентских обращений - и это не только голос. Конечно Genesys умеет в модный омниченнел. Помимо фронтовой части КЦ (звонки и разговоры с агентами), Genesys обеспечит вас инструментами WFO, которые позволяет более эффективно планировать смены агентов, чтобы нагрузка на КЦ была обеспечена в рамках требуемого service level. Что касается так называемых “порталов самообслуживания" - у ребят есть решение. Создавать сервисы, в рамках которых при обращении в КЦ клиент сам сможет решить свою проблему довольно просто. Это основные пункты. Но далеко не все. Погнали дальше. Маркетинг Омниканальный возможности вендора (чаты, мессенджеры, то есть не только голос) обеспечат точечную доставку ваших маркетинговых кампаний до клиентов. Вы уверены, что 20ти летний клиент вашего бизнеса хочет принять звонок? Может быть он ждет сообщения в мессенджер? Продажи Инструментов много. Но самый популярный - это конечно исходящий обзвон (дайлер). Genesys OCS (outbound contact server) вместе с интеграционными возможностями и гибкой кастомизацией обзвона (днем звоним на мобильный, вечером на домашний в зависимости от часового пояса, как вам?), с возможностью обзвона в режимах ручного набор, превью (preview, тут агенту выгружается список контактов и он сам решает, кому звонить), progressive (тоже самое что и превью, только оператор не выбирает) или predictive (дайлер угадывает доступность абонента) - изи. Конкуренты Основные конкуренты это Cisco и Avaya. У Cisco можно выделить 2 продукта (на оба у нас есть статьи, ознакомьтесь нажав ниже): Cisco UCCX - конкурентом, конечно, можно назвать с натяжкой. Ибо это контакт - цент экспресс; Cisco UCCE - тяжеловесная энтерпрайзная машина для контакт - центров. Полноценный конкурент; И решения Avaya Aura. Мы не будем делиться субъективными мнения, кто круче и у кого “очереди больше". Посмотрите анализ гартнера ,если хотите понимать динамику во временном разрезе. Примерная архитектура От инсталляции к инсталляции. И это важно. Но мы очень постарались в общих чертах с детализацией роли серверов нарисовать, как работает КЦ от Genesys. Гляньте на картинку. Мы очень верхнеуровнево постарались показать, как работает обработка цифровых и голосовых каналово в Genesys: Теперь давайте поговорим компоненты: Клиент - хммм. Кто же это может быть? Голос - голосовой обращение клиента в КЦ (звонок); Чат - текстовое сообщение через мессенджер, чат на сайте или мобильном приложении, например; SIP сервер - это интерфейс между SIP (телефония) и компонентами Genesys. Принимает SIP запросы и транслирует их дальше на понятный остальным компонентам язык; GVP - он же Genesys Voice Platform. Гибкая платформа создания приложений для обработки вызовов и работы с RTP потоками. У Cisco есть CVP, а у Genesys GVP, вай нот?) ; ASR/TTS - сердце синтеза и распознавания речи (если мы делаем голосовые сервисы). Genesys активно топит за Nuance, но не переживайте - там живет MRCP. Можно и ЦРТ подключить, и что угодно; GMS - Genesys Mobile Services. Расширяет функции REST API для интеграции с внешними приложениями. Например, с API от Telegram (мессенджер); Interaction сервер - часть PureEngage Digital (eServices). То есть это не голосовые, а цифровые коммуникации. Сервер помогает выполнить обмен сообщениями и выполнять контроль воркфлоу обработки, как было нарисовано в IRD (Interaction Routing Designer). Кстати, IRD это конструктор скриптов маршрутизации. Об этом в следующих статьях; ORS - важный. Очень важный. Его зовут Orchestration Server и он помогает в маршрутизации запросов. ORS интегрируется с другими компонентами, и по факту, просто выполняет на себе SCXML скрипты (стратегии), которые вы сможете сделать в Composer (инструмент для генерации стратегий маршрутизации); Conversation Manager - сам по себе конверсейшн менеджер, это некое приложение, которое обеспечивает согласованную клиентскую коммуникацию. Давайте про его модули поконкретнее: Context Services - помогает определить клиента. Кто он? Чего хочет? Где он находится в процессе всего пути клиентского обращения?; Genesys Rules - набор каких то правил. Например, если мы знаем, что этот клиент интересуется кредитами, часто звонит и исправно платит свой текущий кредит, то в качестве опций, предлагаемых ему, будет предложено воспользоваться приложениям для самообслуживания, например. Условно говоря, этот модуль живет на принятии решений вида if..then; Journey Timeline - классная штука. Визуальная шкала того, какой путь прошел ваш клиент, какие пункты IVR послушал, какие порталы самообслуживания “поюзал" и так далее. CJM (customer journey map), так сказать; Pulse коллектор - компонент, который напрямую коннектится к Stat серверу (сервер сбора статистики) и забирает с него статистику по объектам КЦ; Data Depot - берет данные из Context Services, чтобы передать в статистику информацию по клиенту; Pulse - компонент отчетности и анализа статистики КЦ; Вот так. Это примерная архитектура контактного центра на базе Genesys. Итоги КЦ на базе Genesys - отличный и конкурентный вариант. Продукт имеет мощных конкурентов, борьба с которыми обеспечивает его динамичное развитие. Набор продуктов Genesys создан для того, чтобы прогреть лояльность ваших клиентов то температуры кипения, увеличить продажи и улучшить маркетинговые кампании.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59