General availability: In-Memory OLTP in Azure SQL Database Premium

You can use In-Memory OLTP to achieve incredible performance gains (up to 30X) for transaction processing and data ingestion in your Azure SQL Database Premium databases, with no or minimal changes to the application. Memory-optimized tables, memory-optimized tables types, and natively compiled T-SQL modules are now generally available in all Premium databases, including databases in Premium elastic pools.

Consider using In-Memory OLTP for the following scenarios:

To complement the transaction processing benefits of In-Memory OLTP, Azure SQL Database also supports columnstore indexes to improve the performance of reporting and analytics workloads.

To learn more about In-Memory OLTP and columnstore indexes in Azure SQL Database, see the Azure blog post.

Verschiedene 301-redirect-Methoden

Es gibt zahlreiche Methoden, um auf den verschiedenen Webservern einen korrekten 301-redirect (permanent) zu erwirken.

Ein 301-redirect erlaubt Besuchern und Suchmaschinen den Zugriff auf eine Website, wenn diese verschoben worden ist. Wenn Sie den Domainnamen Ihrer Website geändert oder die Dateinamen der Seiten geändert haben, dann müssen Sie eine Verknüpfung zu den neuen URLs für Besucher und Suchmaschinen-Robots herstellen. Die 301-redirect-Weiterleitung als permanente Weiterleitung ist die suchmaschinenfreundlichste Methode der Umleitung auf die neue URL oder Seite und ist der aktuelle Standard für SEO. Hier finden Sie Anleitungen, wie Sie eine 301-redirects auf den verschiedenen Servern erstellen können.

.htaccess 301 Redirect

Wenn die .htaccess-Datei nicht vorhanden ist, erstellen Sie diese neu. Die Datei wird ohne Dateinamens-Erweiterung mit einem einfachen Texteditor erstellt. Laden Sie die Datei in das Stammverzeichnis Ihrer alten Website. Normalerweise ist das in / public_html oder / www auf Ihrem Server.

Hinweis: Ihr Webserver muss ein Linux-System mit Apache-Webserver und aktiviertem mod_rewrite Modul sein.

FĂĽgen Sie Folgendes zu Ihrer .htaccess-Datei hinzu:

Options +FollowSymLinks RewriteEngine on RewriteRule (.*) https://www.new-site.com/$1 [R=301,L]

Wenn sie statt einer allgemeinen Weiterleitung für die ganze Website lieber einzelne Dateinamen angeben wollen, können Sie eine alte URL nach folgendem Schema auf eine neue URL umleiten:

redirect 301 /old_page.html https://www.yourdomain.com/abc/new_page.html

PHP Redirect:

<?
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.new-domain.com" );
?>

In ASP:

Ă–ffnen Sie die alte Website und ersetzen Sie den kompetten Code durch folgenden Abschnitt:

<{e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}@ Language=VBScript {e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}>
<{e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.new-location.com"
{e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}>

In ASP .NET:

<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.new-location.com");
}
</script>

Mit IIS auf einem Windows-Server:

  1. Klicken Sie im Internetdienste-Manager mit der rechten Maustaste auf die Datei oder den Ordner, die Sie umleiten möchten.
    2. Wählen Sie „eine Umleitung zu einer URL“ aus.
    3. Geben Sie die Umleitungsseite ein.
    4. Markieren Sie „the exact url entered above“ und die „a permanent redirection for this resource“.
    5. Klicken Sie auf „Ăśbernehmen“.

web.config 301 redirect

Mit dem ersten Code-Beispiel können Sie eine einzelne Seite an einen neuen Speicherort umleiten. Das empfiehlt sich, wenn Sie wichtige Seiten ihrer Website verschoben oder umbenannt haben.

1. Öffnen Sie web.config in dem Stamm-Verzeichnis der alten Website
2. Ergänzen Sie nachfolgenden Code:

<configuration>
  <location path="services.htm">
    <system.webServer>
       <httpRedirect enabled="true" destination="http://domain.com/services" httpResponseStatus="Permanent" />
    </system.webServer>
  </location>
  <location path="products.htm">
    <system.webServer>
      <httpRedirect enabled="true" destination="http://domain.com/products" httpResponseStatus="Permanent" />
    </system.webServer>
  </location>
</configuration>

Sie können soviele Einträge wie notwendig hinzufügen.

Das nachfolgende Code-Beispiel leitet ein ganzes Verzeichnis an einen neuen Speicherort um. Wenn Sie zum Beispiel https://domain.com/olddir/ zu http://domain.com/newdir/ umleiten möchten, dann öffnen Sie die Datei web.config im alten Verzeichnis und fügen Sie folgende Zeile innerhalb des Abschnitts <system.webServer> hinzu:

<httpRedirect enabled="true" destination="http://domain.com/newdir" httpResponseStatus="Permanent" />

In ColdFusion:

FĂĽgen Sie den folgenden Code zu Ihrer ColdFusion-Seite hinzu:

<.cfheader statuscode="301" statustext="Moved permanently">
<.cfheader name="Location" value="http://www.new-site.com">

Alle Subdomains auf www umleiten

Einige Webmaster bevorzugen es, domain.com auf www. domain.com umzuleiten, um die Suchmaschinenzugriffe zu optimieren. Dabei kann es jedoch vorkommen, dass einige Links auf die nicht-www-Seite zeigen und andere auf die www-Seite. Nur wenn die beiden Domains zusammengefasst sind, funktionieren alle ankommenden Links wie gewünscht. Das kann aber dazu führen, dass in den Ergebnissen von Suchmaschinen beide Seiten gemeinsam dargestellt werden. Mit der entsprechenden Umleitung kann man das wieder zusammenfassen.

Subdomains mit .htaccess umleiten

FĂĽgen Sie die folgenden vier Zeilen in Ihre .htaccess Datei ein und ersetzen Sie „domain.com“ durch Ihre eigene Domain. Beachten Sie bitte, dass diese Art der Umleitung nur auf Linux-Servern mit Apache und dem Modul Mod-rewrite funktioniert.

Options +FollowSymlinks
RewriteEngine on
rewritecond {e9af6497c2deeac8c5be5d54e262a14ddffa4910472b64062a90c227e47deb00}{http_host} ^domain.com [nc]
rewriterule ^(.*)$ https://www.domain.com/$1 [r=301,nc]

Subdomains mit web.config unter IIS umleiten

Damit die Umleitung mit web.config-Datei funktioniert, muss das URL Rewrite Modul im Microsoft Internet Information Server IIS 7 aktiviert werden. Dann wird folgender Code in die web.config-Datei eingefĂĽgt:

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Redirect to WWW" stopProcessing="true">
          <match url=".*" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^domain.com$" />
          </conditions>
          <action type="Redirect" url="http://www.domain.com/{R:0}" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Wenn Sie Probleme haben, die Umleitung selbst einzurichten, stehen wir Ihnen gerne zur Verfügung.

Kubernetes landet im Azure Container Service

Microsofts Cloud-Angebot zur Planung und Verwaltung von Container-Anwendungen bietet spätestens mit der Ergänzung von Kubernetes das umfangreichste Angebot an Orchestrierungswerkzeugen.

Microsofts Azure Container Service (ACS) ist seit April dieses Jahres ein vollwertiger Cloud-Dienst des Unternehmens. Mit ihm ließen sich bislang auf der Azure-Plattform zur Planung und Orchestrierung von Container-Anwendungen entweder die Docker-Techniken Swarm und Compose oder – unabhängig von Docker – Mesospheres Datacenter Operating System (DC/OS) nutzen, das wiederum auf dem Cluster-Framework Apache Mesos basiert. Der Cloud-Dienst wurde nun um die Unterstützung für Kubernes ergänzt, das von Google initiierte und wohl wichtigste Container-Orchestrierungswerkzeug. Microsoft bietet damit das umfangreichste Angebot an Orchestrierungswerkzeugen im Container-Umfeld.

Vor allem Container-Orchestrierung, aber noch mehr

Der Kubernetes-Support hat derzeit jedoch noch Preview-Status. Es wird aber bereits die aktuelle Version 1.4 des Tools unterstützt. Zusätzlich nutzt der Cloud-Dienst nun DC/OS 1.8.4, was Verbesserungen beim Job-Scheduling und Marathon-basierte Container-Orchestrierung mitbringt. Damit nicht genug, hat Microsoft die dem Azure Container Service zugrunde liegende Engine als Open-Source-Projekt auf GitHub bereitgestellt. Die Engine selbst ist ein in Go geschriebener Template Processor. Die Unterstützung von Kubernetes passt gut zur Bekanntmachung aus dem Juli, dass Brendan Burns, einer der Kubernetes-Erfinder, von Google zu Microsoft gewechselt war.

Eine weitere Nachricht ist, dass die Azure Container Registry schon bald den Status einer offenen Beta hat. Dabei handelt es ich um einen Dienst, um Docker-Images in einer Private Cloud nutzen zu können. Am 14. November soll dieser Dienst dann verfügbar sein. Begleitet werden all diese Neuerungen von Features in den Entwicklerwerkzeugen Visual Studio, Visual Studio Team Services und Visual Studio Code, die dabei helfen sollen, Container-Anwendungen mit dem Azure Container Service betreiben zu können.

Docker und Kubernetes

Mit Docker lassen sich Anwendungen samt ihrer Abhängigkeiten in sogenannte Container verpacken, in denen sie sich später leicht weitergeben und ausführen lassen. Im Vergleich zu virtuellen Maschinen sind die Docker-Container sparsamer im Umgang mit Ressourcen und können schneller starten. Allerdings ist zum Anfang der Konfigurationsaufwand erheblich höher – und hier soll Kubernetes helfen.

Kubernetes war auf Googles Entwicklerkonferenz I/O 2014 vorgestellt worden und hatte schnell UnterstĂĽtzer wie Microsoft, IBM und Red Hat gefunden. Seit Sommer 2015 wird die Software unter dem Dach der von der Linux Foundation betriebenen Cloud Native Computing Foundation (CNCF) entwickelt.

Veritas bringt Datenmanagement auf Azure

Veritas ermöglicht Unternehmen Data Governance und Data Storage jetzt auch auf den Public-Cloud-Services von Microsoft umzusetzen.

Veritas Technologies geht mit Microsoft eine strategische Partnerschaft ein, um die eigenen Datenmanagement-Lösungen auch auf den Cloud-Plattform des Anbieters bereitstellen zu können. Weiterlesen

HTTPS / SSL auf einer Website erzwingen

Den Besucherverkehr vom HTTP-Protokoll auf die HTTPS-Version einer Website zur Nutzung von SSL umzuleiten ist ganz einfach.

Die folgende Methode funktioniert nicht nur mit Microsoft Azure Web Services App, sondern auch mit jeder anderen Website, die auf einem Microsoft IIS (Internet Information Server) Webserver läuft. Bei vielen Kunden setzen wir diese Variante ein, um den Datenverkehr im Internet sicherer zu machen und HTTPS-SSL-Zertifikate sinnvoll zu nutzen. Denn in vielen unserer Hosting-Pakete sind einfachere SSL-Zertifikate für den www-Webserver bereits inklusive enthalten.

HTTPS bzw. SSL aktivieren

Nachdem es innerhalb des Azure Portals keinen Schalter oder keine Option gibt, um den verschlüsselten Datenverkehr zu erzwingen, wird eine web.config Datei im Stammverzeichnis der Web-App angelegt. Das geht am einfachsten über die in Azure integrierte App Kudu, die in jeder WebApp über erreichbar ist. Dort findet man unter Debug Console -> CMD einen Zugriff auf die Verzeichnisstruktur.

Kudu

Unter dem Ordner site\wwwroot\ wird nun eine neue Datei web.config angelegt und mittels dem in Kudu integrierten Editor bearbeitet.

Der Inhalt von web.config:

<configuration>
<system.webServer>
<rewrite>
    <rules>
	<rule name="HTTP to HTTPS redirect" stopProcessing="true"> 
	<match url="(.*)" /> 
	<conditions> 
		<add input="{HTTPS}" pattern="off" ignoreCase="true" />
	</conditions> 
	<action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />
      </rule>   
    </rules>
</rewrite>
</system.webServer>
</configuration>

Damit wird, unabhängig von der im hostheader eingegebenen Domain, der Datenverkehr auf die HTTPS-Variante umgeleitet.

Wir nutzen dieses Verfahren selbst bei einigen Kunden, die ausschlieĂźlich auf SSL-verschlĂĽsselten Webzugriff setzen.

Wetterstation mit dem Raspberry Pi 2, Windows 10 IoT Core und Microsoft Azure

Ein interessantes Projekt fĂĽr den Raspberry Pi mit Windows 10 IoT Core und Microsoft Azure haben wir bei hackster.io gefunden.

Unter https://www.hackster.io/windows-iot/weather-station-67e40d ist beschrieben, wie man aus dem Raspberry Pi 2 eine kleine Wetterstation bauen kann.

Weiterlesen

Microsoft Azure: Daten zwischen Speicherkonten kopieren

Ein Kunde konfrontierte uns mit der Anforderung, Daten zwischen zwei verschiedenen Speicherkonten zu kopieren. In Summe ging es um mehrere Terabyte (TB) an Daten, hauptsächlich inkrementelle Backups verschiedener Systeme, als BLOB gespeichert, die verlustfrei zu transportieren waren. Die Speicherkonten lagen darüberhinaus in verschiedenen Abonnements (Subscriptions), was den Transfer nicht einfacher gestaltete.

Möglichkeiten

Grundsätzlich gab es mehrere Möglichkeiten:

Weiterlesen

Microsoft Azure IoT Starter Kits

Microsoft bietet in Zusammenarbeit mit Adafruit viele vorgefertige IoT Starter Kits an, mit denen sich das Internet of Things selbst ausprobieren lässt.

Implementieren Sie noch heute innovative Lösungen, und nutzen Sie unsere Kits, die Entwicklungsboards mit „Azure Certified für IoT“-Zertifizierung, Sensoren und Stellglieder umfassen. In einfachen, benutzerfreundlichen Tutorials erfahren Sie, wie Sie Ihre Geräte über Microsoft Azure IoT mit der Cloud verbinden.

Neu im Angebot ist das „Adafruit Raspberry Pi 3-Kit“, welches auf Windows 10 IoT Core basiert und sich spielend leicht in Azure integrieren lässt. Ein Startup-Script fĂĽr den Raspberry finden Sie hier.

Weiterlesen