По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Существует множество бесплатных и многофункциональных IP - софтфонов. В сегодняшней статье расскажем об одном из таких программных клиентов - Linphone и покажем, как подготовить его для использования вместе с IP-АТС Asterisk. /p> Теория Linphone (Linux Phone) является кроссплатформенным решением для IP-телефонии, работающим по протоколу SIP, которое позволяет совершать аудио и видео звонки через Интернет. Linphone доступен как в виде десктопных версий для операционных систем Microsoft Windows, Linux, Mac OS так и в виде мобильных приложений для устройств на базе операционных систем Android, iOS Данный софтфон совместим и поддерживает следующие протоколы: SIP, SRTP, ZRTP, STUN, ipv6, обмен мгновенными текстовыми сообщениями по протоколу SIMPLE. Поддерживаются следующие типы аудиокодеков: G.711, GSM-FR, Speex, iLBC и видеокодеков: H.263, MPEG4, theora H.264 Настройка Рассмотрим настройки софтфона Linphone для работы с IP-АТС Asterisk. Устанавливать будем клиент для операционной системы Windows. Для этого нужно сначала скачать дистрибутив с сайта разработчика linphone.org. Самая последняя версия – 3.10.2 от 13 августа 2016. Затем нужно выполнить стандартную процедуру установки, согласившись со всеми лицензионными правилами и указав путь, куда необходимо установить программу. В процессе установки, Вам предложат установить кодек Cisco H.264, рекомендуем согласиться с данным пунктом. Когда установка будет завершена, Вам предложат создать учётную запись для совершения звонков по протоколу SIP. Нажимаем Forward Далее нужно выбрать тип учётной записи. Доступно четыре варианта – создание учётной записи на сайте linphone.org, ввести аутентификационные данные ранее созданной учётной записи с сайта linphone.org, ввести учётные данные ранее созданной учётной записи SIP – нам подходит именно этот пункт, поскольку мы будем использовать учётные данные внутреннего номера , который создали ранее на нашей IP-АТС. И последний из доступных вариантов – указать URI удалённого сервера конфигурации. Итак, выбираем I have already a sip account and I just want to use it И вводим учётные данные, которые мы уже создали ранее на нашей IP-АТС. Например номер 1021 А далее, просто переносим их в Linphone, 192.168.1.148 - это адрес нашей IP-АТС. Если всё было сделано верно, то после регистрации напротив наших учётных данных мы увидим зеленый круг - Online, свидетельствующий о том, что наша учётная запись активна и можно совершать звонки при помощи клиента Linphone.
img
Графовые базы данных (Graph databases) – это нереляционные системы (NoSQL), которые определяют корреляции между сложно взаимосвязанными сущностями. Такая структура позволяет обойти ограничения реляционных БД и уделяет больше внимания отношениям между данными. Графовая база данных позволяет аккуратно определять взаимосвязи и дает ответы на сложные вопросы о том, как точки данных соотносятся друг с другом. В данной статье объясняется, что такое графовые базы данных, и как они работают. Но для начала можно быстро познакомиться с другими видами NoSQL. Что такое графовая база данных? Графовая база данных – это нереляционный тип баз данных, основанный на топографической структуре сети. Идея этой БД восходит к математической теории графов. Графы представляют наборы данных в виде узлов, ребер и свойств. Узлы, или точки (nodes) – это экземпляры или сущности данных; ими является любой объект, который вы планируете отслеживать. Например, люди, заказчики, подразделения и т.д. Ребра, или линии (edges) – это важнейшие концепции в графовых БД. Они отображают взаимосвязь между узлами. Эти связи имеют направление и могут быть одно- или двунаправленными. Свойства (properties) содержат описательную информацию, связанную с узлами. В некоторых случаях свойства бывают и у ребер. Узлы с пояснительными свойствами создают взаимосвязи, представленные через ребра. Графовые БД предлагают концептуальное представление данных, тесно связанных с реальным миром. Моделировать сложные связи гораздо проще, поскольку отношениям между точками данных уделяется такое же внимание, как и самим данным. Сравнение графовых и реляционных баз данных Графовые БД не создавались для замены реляционных БД. Стандартом отрасли на текущий момент считаются реляционные БД. Но перед этим важно понять, что может предложить та или иная разновидность систем. Реляционные базы данных обеспечивают структурированный подход к данным, а графовые БД считают более гибкими и ориентированы на быстрое понимание взаимосвязей между данными. Графовые и реляционные БД имеют свою область применения. Сложные взаимосвязи лучше реализовать через графовые БД, поскольку их возможности превосходят традиционные реляционные СУБД. При создании моделей баз данных в реляционных системах MySQL или PostgreSQL требуется тщательное планирование, а в графовых используется более естественный и гибкий подход к данным. В таблице ниже приведены ключевые отличия между графовыми и реляционными БД: Тип Графовые БД Реляционные БД Формат Узлы и ребра со свойствами Таблицы со строками и столбцами Связи Представлены в виде ребер между узлами Создаются с помощью внешних ключей между таблицами Гибкость Гибкие Жестко заданные Сложные запросы Быстрые и отзывчивые Необходимы сложные соединения Варианты использования Системы с взаимосвязанными зависимостями Системы с транзакциями и более простыми отношениями Как работают графовые базы данных? Графовые базы данных одинаково относятся к данным и взаимосвязям между ними. Связанные узлы физически связываются, и эта связь рассматривается как часть данных. При таком моделировании данных вы можете запрашивать взаимосвязи также, как и сами данные. Вместо вычисления и запросов на подключение, графовые БД считывают взаимосвязи напрямую из хранилища. По гибкости, производительности и адаптивности графовые БД близки к другим нереляционным моделям данных. В них, как и в других нереляционных БД, отсутствуют схемы, что делает данную модель гибкой и легко изменяемой. Примеры использования графовых баз данных Есть много примеров, когда графовые БД превосходят все прочие методы моделирования данных. Среди таких примеров можно выделить: Рекомендательные сервисы в режиме реального времени. Динамичные рекомендации по продуктам и электронным товарам улучшают пользовательский опыт и максимизируют прибыль. Из известных компаний можно упомянуть Netflix, eBay и Walmart. Управление основными данными. Привязка всех данных к одной общей точке обеспечивает постоянство и точность данных. Управление основными данными крайне важно для крупномасштабных компаний мирового уровня. GDPR и соблюдение нормативных требований. С графами гораздо проще управлять безопасностью и отслеживать перемещение данных. Базы данных снижают вероятность утечки информации и обеспечивают большую согласованность при удалении данных, чем повышается общее доверие к конфиденциальной информации. Управление цифровыми ресурсами. Объем цифрового контента просто огромен и постоянно растет. Графовые БД предлагают масштабируемую и простую модель данных, позволяющую отслеживать цифровые ресурсы: документы, расчеты, контракты и т.д. Контекстно-зависимые сервисы. Графы помогают в предоставлении сервисов, приближенных к актуальным характеристиками мира. Будь то предупреждения о стихийных бедствиях, информация о пробках или рекомендации по товарам для конкретного местоположения, – графовые базы данных предлагают логическое решение для реальных обстоятельств. Выявление мошенничества. Поиск подозрительных закономерностей и раскрытие мошеннических платежных схем выполняется в режиме реального времени. Выявление и изоляция частей графа позволяет быстрее обнаружить мошенническое поведение. Семантический поиск. Обработка естественного языка бывает неоднозначной. Семантический поиск помогает определить значение ключевых слов и выдает более подходящие варианты, которые, в свою очередь проще отобразить с помощью графовых БД. Сетевое управление. Сети – это не что иное, как связанные графы. Графовые БД снижают время, необходимое для оповещения сетевого администратора о проблемах в сети. Маршрутизация. Информация передается по сети за счет поиска оптимальных маршрутов, и это делает графовые БД идеальным вариантом для маршрутизации. Какие есть известные графовые базы данных? С ростом больших данных и аналитики в соцсетях популярность графовых БД возрастает. Моделирование графов поддерживает множество многомодельных БД. Кроме того, доступно много нативных графовых БД. JanusGraph JanusGraph – это распределенная, масштабируемая система графовых БД с открытым кодом и широким набором возможностей по интеграции и аналитике больших данных. Ниже приведен перечень основных функций JanusGraph: Поддержка ACID-транзакций с возможностью одновременного обслуживания тысяч пользователей Несколько вариантов хранения графических данных, включая Cassandra и HBase Встроенный сложный поиск, а также дополнительная (опциональная) поддержка Elasticsearch Полная интеграция Apache Spark для расширенной аналитики данных JanusGraph использует полный по Тьюрингу язык запросов для обхода графов Neo4j Neo4j (Network Exploration and Optimization 4 Java, что переводится как «исследование сети и оптимизация для Java») – это графовая база данных, написанная на Java с нативным хранением и обработкой графов. Основные возможности: Масштабируемость БД за счет разделения данных на части – сегменты Высокая доступность благодаря непрерывному резервному копированию и последовательным обновлениям Высокий уровень безопасности: несколько экземпляров баз данных можно разделить, оставив их на одном выделенном сервере Neo4j использует Cypher – язык запросов для графовых БД, который очень удобен для программирования DGraph DGraph (Distributed graph, что переводится как «распределенный граф») – это распределенная система графовых БД с открытым исходным кодом и хорошей масштабируемостью. Вот несколько интересных возможностей DGraph: Горизонтальная масштабируемость для работы в реальной среде с ACID-транзакциями DGraph – это свободно распространяемая система с поддержкой множества открытых стандартов Язык запросов – GraphQL, который был разработан для API DataStax Enterprise Graph DataStax Enterprise Graph – это распределенная графовая БД на базе Cassandra. Она оптимизирована под предприятия. Несколько функций: DataStax обеспечивает постоянную доступность для корпоративных нужд База данных легко интегрируется с автономной платформой Apache Spark Полная интеграция аналитики и поиска в реальном времени Масштабируемость за счет наличия нескольких центров обработки данных Поддержка Gremlin и CQL для запросов Плюсы и минусы графовых баз данных В каждом типе баз данных есть свои плюсы и минусы. Именно поэтому так важно понимать отличия между моделями и доступные возможности для решения конкретных проблем. Графовые БД – это развивающаяся технология с целями, отличными от других типов БД. Плюсы Вот несколько плюсов графовых баз данных: Гибкая и адаптивная структура Четкое представление взаимосвязей между сущностями Запросы выводят результаты в реальном времени. Скорость зависит от количества связей Минусы Ниже перечислены основные минусы системы: Отсутствует стандартизированный язык запросов. Язык зависит от используемой платформы Графы не подходят для систем на основе транзакций Небольшая база пользователей; при возникновении проблема сложно получить поддержку Заключение Графовые базы данных – это отличный подход для анализа сложных отношений между объектами данных. Быстрота запросов и результаты в режиме реального времени хорошо вписываются в требования современных и стремительно растущих исследований данных. Графы – это развивающаяся технология, которую ждет еще много улучшений.
img
Основой любого сайта является HTML. Это первое, что видят люди. Без него сайта бы не существовало. Поэтому так важно придерживаться правильных методов написания кода. Если этого не делать, то посетители вашего сайта получат плохой пользовательский опыт. В HTML всегда есть, чему поучиться. Причем не важно, новичок вы в программировании или опытный специалист. В данной статье мы поговорим о лучших практиках HTML. Давайте начнем. Лучшие практики HTML – это набор правил, помогающих создавать сайты, одинаково удобные для чтения и сопровождения. При создании сайта на HTML необходимо придерживаться следующих принципов: Используйте только один элемент <h1> для страницы В HTML доступно 6 различных тегов заголовков – от <h1> до <h6>. Тегом <h1> отмечается основной заголовок (название веб-страницы), а тег <h6> используется для наименее важного заголовка. Тег <h1> крупнее <h2>, <h2> крупнее <h3> и так до тега <h6>. Размер каждого заголовка уменьшается по степени его важности. Очень важно не добавлять более одного элемента <h1> на странице. Не делайте так: <main> <div> <h1>Писать код – это весело?</h1> <p>Чем больше вы пишете, тем опытнее становитесь</p> </div> <div> <h1>Писать код – это весело</h1> <p>Лучше писать код с удовольствием</p> </div> </main> В примере выше мы используем тег <h1> в первом и втором блоке <div>. Такой код, конечно же, заработает, но это не самый правильный вариант оформления. Лучше вот так: <main> <div> <h1>Писать код – это весело?</h1> <p>Чем больше вы пишете, тем опытнее становитесь</p> </div> <div> <h2>Писать код – это весело</h2> <p>Лучше писать код с удовольствием</p> </div> </main> Кроме того, наличие одного элемента <h1> на странице – крайне важно для поисковой оптимизации (SEO). Через этот тег поисковики понимают, что находится на странице (главная мысль страницы). Не забывайте про иерархию заголовков в HTML Когда вы пользуетесь тегами заголовков, важно следовать установленной иерархии: после <h1> идет <h2>, за <h3> следует <h4> и т.д... Не перескакивайте от <h1> к <h3>. Некоторые посетители сайта используют средства чтения с экрана. И таким пользователям бывает трудно понять содержимое вашей страницы при нарушенной иерархии элементов. Средства чтения с экрана – это одна из специальных возможностей, помогающая людям получать доступ к цифровому содержимому (сайтам или приложениям) и взаимодействовать с ним через звуки и касания. Основные пользователи данной технологии – слабовидящие или незрячие люди. Не делайте так: <h1>Писать код – это весело</h1> <h3>Лучше писать код с удовольствием</h3> <h5>Постоянство – это ключ</h5> Лучше вот так: <h1>Писать код – это весело?</h1> <h2>Чем больше вы пишете, тем опытнее становитесь</h2> <h3>Писать код – это весело</h3> Добавляйте подписи к изображениям через элемент figure Добавлять подписи к изображениям рекомендуется через элемент <figure>. А чтобы все заработало, нужно прописать не только <figure>, но и <figcaption>. Не делайте так: <div> <img src=“a-man-coding.jpg” alt=“Мужчина за компьютером”> <p>Это изображение мужчины, который работает за компьютером</p> </div> С точки зрения кода, пример выше написан хорошо. Но лучше сделать все иначе. Если изображение не загрузилось, отображается содержимое alt, и на экране показывается текст из элемента <p>. Но посетитель, использующий средства чтения с экрана, не сможет отличить тексты в <p> и alt. Помните: даже если ваш код работает, это еще не значит, что вы делаете все правильно. Лучше сделать вот так: <figure> <img src=“a-man-coding.jpg” alt=“ Мужчина за компьютером”> <figcaption>Это изображение мужчины, который работает за компьютером</figcaption> </figure> Пример выше – отличный способ, как можно добавить подписи к изображениям. Почему важно добавлять подписи к изображениям именно так: Поисковая оптимизация. Ваши изображения легче найти в поисковых системах. Посетителям, использующим средства чтения с экрана, проще понять содержимое вашей страницы. Не используйте div для шапки и подвала; для этого подходят семантические элементы Семантические элементы HTML используются для логической разметки структуры документа на странице. Кроме того, они нужны для правильной сборки страницы. Откажитесь от <div> в пользу семантики. Не используйте <div> для обозначения шапки и подвала страницы. Для этих целей есть семантические элементы <header> и <footer>. Элемент <header> показывает навигацию или вводную часть страницы. В элементе <footer> размещается информация об авторских правах или ссылки для перехода на страницы. Не делайте так: <div class="header"> <a href="index.html">Главная</a> <a href="#">О нас</a> <a href="#">Контакты</a> </div> <div class="footer"> <a href="index.html">Главная</a> <a href="#">О нас</a> <a href="#">Контакты</a> </div> В примере выше тег <div> используется в качестве контейнера для <header> и <footer>. Такой код будет работать, но это не самый правильный способ реализации. Лучше вот так: <header> <h1></h1> </header> <footer> <a href="index.html">Главная</a> <a href="#">О нас</a> <a href="#">Контакты</a> </footer> Лучше всего добавлять <footer> и <header> на страницу именно так. Почему важно добавлять <footer> и <header> с помощью семантических элементов HTML: Использование семантических элементов для шапки и подвалаупрощает чтение кода. Такой способ предлагает более качественный пользовательский опыт. Посетителям, использующим средства чтения с экрана, будет проще понять содержимое страницы. Не используйте <b> и <i> для выделения текста на странице Теги <b> и <i> выделяют текст жирным шрифтом (b) или курсивом (i). Но не стоит ими пользоваться на сайте, поскольку оба тега не несут семантической нагрузки. Для выделения текста лучше подходит свойство CSS font-weight, либо теги <strong> и <em>. Тегом <strong> отмечают важный текст на странице. Он выделяет текст или делает его жирным. Тег <em> подчеркивает текст или добавляет курсив (точно также, как <i>). Не делайте так: <p><i>Пишите код в своем собственном темпе</i><p> <p><b>пишите код в своем собственном темпе </b><p> В этом примере текст выделяется жирным и курсивом. Но пользователи со средствами для чтения с экрана не заметят разницы. Данные теги не несут семантического значения. Спецификация HTML 5 рекомендует нам использовать теги <b> и <i> только в самых крайних случаях и при отсутствие альтернативных вариантов. Лучше делайте так: <p><strong>Пишите код в своем собственном темпе</strong><p> <p><em>пишите код в своем собственном темпе</em><p> Не используйте блочные элементы внутри строчных Блочные элементы начинают новую строку на странице. По умолчанию действие этих элементов распространяется на всю строку – от ее начала до конца. Вы не сможете добавить строчные элементы внутри блочных без CSS. К блочным элементам относятся <p>, <h1> – <h6> и <div>. Строчные элементы действуют на небольшую часть страницы. Они не начинаются с новой строки. К строчным элементам относятся <span>, <em> и <a>. Вы не можете добавить блочные элементы внутри строчных. Не делайте так: <a href="#" > <p>Посетите merion</p> </a> У вас не получится добавить <p> внутрь элемента <a>, поскольку <p> относится к блочным элементам, а <a> – к строчным. Лучше сделать так: <p> Посетите <a href="wiki.merionet.ru" target="_blank">Merion</a> для изучения IT </p> Это отличный пример того, как можно вложить строчные элементы внутри блочных. Важно помнить, что: Блочный элемент нельзя вложить внутри строчного. Строчный элемент можно вложить внутри блочного. Строчный и блочный элемент можно вложить внутри блочного. Небольшое уточнение: «вложить» что-то в данном случае означает «добавить внутрь». Так что, говоря «это нельзя вложить», я имею ввиду, что вы не сможете добавить один такой элемент внутрь другого. Надеюсь, вы запомнили 3 простых правила для вложения элементов. Кроме того, CSS позволяет преобразовать блочные элементы в строчные. Для этого используется display: inline-block и display: inline. А еще важно помнить простую истину: даже если ваш код работает, это еще не значит, что вы делаете все правильно. Именно поэтому я всегда рекомендую пользоваться валидатором разметки W3C и дополнительно проверять свой код. Этот валидатор отслеживает правильность разметки веб-документов в HTML, XHTML, SMIL, MathML и т.д. Для проверки кода можно скопить его URL и добавить на сайт, либо загрузить сам файл HTML. Заключение Надеемся, что данная статья помогла вам узнать что-то новое о лучших практиках в HTML. Мы постарались включить в нее самые полезные советы, которыми можно начинать пользоваться уже сегодня.
Осенние скидки
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59